// all navigation related methods *must* be placed in 
// this class
///////////////////////////////////////////////////////

var Postcard = new Class({
	
	// CONSTRUCTOR
	initialize: function() {
		var postcards	= $$('.postcardSmall');
		var postcard	= $('postcardLarge');
		
		if(postcards.length > 0) {
			for(var i=0;i<postcards.length;i++) {
				var node = postcards[i];
				node.onclick=function() {
					var _postcard	= new Postcard('noinit');
					
					var smallScore	= this.id.lastIndexOf('_');
					var smallFile	= this.id.substring(smallScore+1, this.id.length);
					
					_postcard.doStepOne(smallFile);
				}
			}
		}
		
		if(postcard) {
			postcard.onclick = function() {
				var _postcard	= new Postcard('noinit');
				
				var largeSrc	= postcard.src;
				var largeSlash	= largeSrc.lastIndexOf('/');
				var largeScore	= largeSrc.lastIndexOf('_');
				var largeFile	= largeSrc.substring(largeSlash+1, largeScore);
				
				_postcard.doStepTwo(largeFile);
			}
		}
	},
	
	// METHODS
	doStepOne: function(id) {
		var large 		= $('postcardLarge');
		var idField		= $('imageId');
		var largeSrc	= large.src;
		var largeSlash	= largeSrc.lastIndexOf('/');
		var largeScore	= largeSrc.lastIndexOf('_');
		var largeFile	= largeSrc.substring(largeSlash+1, largeScore);
		
		large.src		= largeSrc.replace(largeFile, id);
		idField.value	= id;
	},
	
	doStepTwo: function(id) {
		var stepTwo		= $('pcStepTwo');
		var stepThree	= $('pcStepThree');
		var slider		= $('pcSlider');
		
		var postcards	= $$('.postcardSmall');
		
		if(stepTwo) {
			var showStepThree	= new fx.Style(slider, 'margin-left', {duration: 800, transition: fx.Transitions.backOut});
			showStepThree.custom(0, -486);
		}
		
		if(postcards.length > 0) {
			for(var i=0;i<postcards.length;i++) {
				var node = postcards[i];
				if(node.id.indexOf(id) == -1) {
					node.setOpacity('0.2');
					node.style.cursor 	= 'auto';
					node.className		= node.className.replace(/postcardSmall/, "postcardSmallInactive");
				} else {
					node.style.cursor 	= 'auto';
				}
			}
		}
	}

});
