var Thumbnails = {
	imagePath : "/images",
	requestText : "Like it? I would love to handcraft this item for you!\nSimply leave your email address and I'll make this for you exactly the way you want.",
	successText : "Thank you! I'll be in touch with you for more details about your requirements.",
	failureText : "Oops! It seems I can't properly read your email address. Please send me an email at the address below.",
	url : "/cgi-bin/cgiemail/email.txt",
	setSelected : function(index, log) {
		Thumbnails.selectedIndex = index;
		Thumbnails.spotlight.src = "/" + Thumbnails.items[index][1];
		Thumbnails.title.innerHTML = Thumbnails.items[index][2];
		Thumbnails.subtitle.innerHTML = Thumbnails.items[index][3];
		Thumbnails.text.innerHTML = Thumbnails.items[index][4];
		if (Thumbnails.currentPanel != Thumbnails.requestPanel) {
			Thumbnails.setPanel(Thumbnails.requestPanel);
		}
		// Track event with Google Analytics
		if (_trackEvent) {
			_trackEvent(Thumbnails.category, "View", Thumbnails.items[index][0]);
		}
		// Show item and discontinue further processing
		Thumbnails.container.style.display = "block";
		return false;
	},
	onSend : function(event) {
		try {
				var text = "category=" + Thumbnails.category + "&" +
					"item=" + Thumbnails.items[Thumbnails.selectedIndex][0] + "&" +
					"email=" + Thumbnails.input.value;
				var request = new XMLHttpRequest();
				request.onreadystatechange = function() {
					if (request.readyState == 4) {
						var newPanel = (request.status == 200) ?
							Thumbnails.successPanel : Thumbnails.failurePanel;
						Thumbnails.setPanel(newPanel);
					}
				};
				request.open("POST", Thumbnails.url, true);
				request.setRequestHeader("Content-Type",
					"application/x-www-form-urlencoded");
				request.send(text);
			} catch(e) {
				Thumbnails.setPanel(Thumbnails.failurePanel);
			}
	},
	setPanel : function(panel) {
		for (var index in Thumbnails.currentPanel) {
			Thumbnails.panel.removeChild(Thumbnails.currentPanel[index]);
		}
		for (var index in panel) {
			Thumbnails.panel.appendChild(panel[index]);
		}
		Thumbnails.currentPanel = panel;
	},
	start : function(category, items) {
		this.category = category;
		this.items = items;
		YAHOO.util.Event.onDOMReady(function(event) {
			Thumbnails.container = YAHOO.util.Dom.get('item-container');
			Thumbnails.spotlight = YAHOO.util.Dom.get('spotlight');
			Thumbnails.title = YAHOO.util.Dom.get('title');
			Thumbnails.subtitle = YAHOO.util.Dom.get('subtitle');
			Thumbnails.text = YAHOO.util.Dom.get('text');
			Thumbnails.panel = YAHOO.util.Dom.get('panel');
			YAHOO.util.Event.on('right', 'click', function() {
				new YAHOO.util.Scroll('thumbnails', {
					scroll: { by: [300,0] }
				},0.5, YAHOO.util.Easing.easeOut).animate();
			});
			YAHOO.util.Event.on('left', 'click', function() {
				new YAHOO.util.Scroll('thumbnails', {
					scroll: { by: [-300,0] }
				},0.5, YAHOO.util.Easing.easeOut).animate();
			});
			// Build request/response panels
			var requestPanel = [];
			var text = Thumbnails.requestText.split("\n");
			for (var index in text) {
				requestPanel.push(document.createTextNode(text[index]));
				requestPanel.push(document.createElement("br"));
			}
			var input = document.createElement("input");
			input.type = "text";
			input.value = "your email";
			Thumbnails.input = input;
			YAHOO.util.Event.on(input, 'click', function() {
				if (Thumbnails.input.value == "your email") {
					Thumbnails.input.value = "";
				}
			});
			var send = document.createElement("span");
			send.id = "send";
			send.innerHTML = "Send";
			YAHOO.util.Event.on(send, 'click', Thumbnails.onSend);
			requestPanel.push(input);
			requestPanel.push(send);
			
			var successPanel = [];
			var text = Thumbnails.successText.split("\n");
			for (var index in text) {
				successPanel.push(document.createTextNode(text[index]));
				successPanel.push(document.createElement("br"));
			}
			var image = document.createElement("img");
			image.src = "/mel.gif";
			successPanel.push(image);
			var failurePanel = [];
			var text = Thumbnails.failureText.split("\n");
			for (var index in text) {
				failurePanel.push(document.createTextNode(text[index]));
				failurePanel.push(document.createElement("br"));
			}
			failurePanel.push(image);

			Thumbnails.requestPanel = requestPanel;
			Thumbnails.successPanel = successPanel;
			Thumbnails.failurePanel = failurePanel;
			Thumbnails.currentPanel = [];
			Thumbnails.setSelected(0, false);
		});
	}
}


