var ImageTransition = new Class({
	initialize: function(source){
		this.source = source.src.split('-small.jpg')[0]+"-large.jpg";
		this.slug = source.alt;
		this.cleanup();
		$('media-image-large-buffer').src = $('main-image').src;
		this.setup();
	},
	setup: function() {
		$('media-loading-image').setStyle('display', 'block');
		this.fx = new fx.Style($('media-image-large-buffer'), 'opacity', {duration: 1000});
		this.image = new Image();
		this.image.src = this.source;
		if (!this.image.complete) {
			this.image.onload = function() {
				this.show();
			}.bind(this);
		}
		else this.show();
	}, 
	show: function() {
		$('media-loading-image').setStyle('display','none');
		$('main-image').src = this.image.src;
		//$('media-slug').setHTML(this.slug);
		this.fx.custom(1,0);
	},
	cleanup: function() {
		if ($('media-image-large-buffer')) $('media-image-large-buffer').remove();
		var secondImg = new Element('img');
		secondImg.id = 'media-image-large-buffer';
		$('displayedImage').adopt(secondImg);
	}
});