function addLoadEvent(func) {
	var oldonload = window.onload;
	if (typeof window.onload != "function") {
		window.onload = func;
	}
	else {
		window.onload = function() {
			if (oldonload) { oldonload(); }
			func();
		}
	}
}

function buildElement(data) {
	if (typeof data == "string" || typeof data == "number") {
		return document.createTextNode(new String(data));
	}
	var tagName = data[0];
	var className, id;
	if (tagName.include(".")) {
		tagName = tagName.split(".");
		className = tagName[1];
		tagName = tagName[0];
	}
	else if (tagName.include("#")) {
		tagName = tagName.split("#");
		id = tagName[1];
		tagName = tagName[0];
	}
	var node = document.createElement(tagName);
	if (className) { node.className = className; }
	if (id) { node.id = id; }
	if (data[1]) {
		var attr = data[1];
		for (var i in attr) {
			if (i.startsWith("style.")) {
				node.style[i.substr(6)] = attr[i];
			}
			else {
				node[i] = attr[i];
			}
		}
		for (var i = 2; i < data.length; i++) {
			node.appendChild(buildElement(data[i]));
		}
	}
	return Element.extend(node);
}

var textInputs = {};
function initCustomShirt() {
	var questions = $$(".personalization-question");
	for (var i = 0; i < questions.length; i++) {
		var label = questions[i].down(".personalization-question-label").innerHTML.split(" ")[0];
		var input = questions[i].down("input.textbox");
		if (label && input) {
			textInputs[label] = input;
			//window.console.log("Label: <" + label + ">");
		}
	}
	var inputs = $$("input");
	for (var i = 0; i < inputs.length; i++) {
		if (inputs[i].id.match("Quantity")) {
			textInputs["Quantity"] = inputs[i];
			break;
		}
	}
	$("customShirt").next("div").hide();
	$("product_detail_options").hide();
	$("product_detail_desc").hide();
	var addToCart = $$("input.prod-detail-add")[0];
	$(addToCart).setStyle({marginBottom: "20px", position: "relative", left: "20px"});
	$("customShirt").parentNode.appendChild(addToCart);
	setInterval(updateFromHash, 1000);
}

var formData = {};
function updateFromHash() {
	var hash = window.location.hash;
	if (!hash) { return; }
	var params = decode(hash.substr(1));
	params = params.split("&");
	for (var i = 0; i < params.length; i++) {
		var pieces = params[i].split("=");
		var key = pieces[0];
		var value = decodeURIComponent(pieces[1]);
		if (formData[key] && formData[key] == value) {
			continue;
		}
		//window.console.log(key + ": " + value);
		formData[key] = value;
		var radio = false;
		for (var label in textInputs) {
			if (label == key) {//&& textInputs[label] && label.match(key)) {
				textInputs[label].value = value;//checked = true;
				break;
			}
		}
	}
	textInputs["Duplex"].value = (formData["Front"] && formData["Back"] ? "yes" : "");
}

function decode(str) { return str.replace(/_\w\w/g, function(match) { return decodeURIComponent("%" + match.substr(1)); }); }

if (location.href.match("bigfactorycustomshirt.aspx")) {
	addLoadEvent(initCustomShirt);
	document.write('<script src="http://ajax.googleapis.com/ajax/libs/prototype/1.6.0.2/prototype.js"></script>');
	document.write('<iframe id="customShirt" src="http://cahootsdesign.com/bigfactory/bigfactory.html" width="535" height="1775" frameborder="0" scrolling="no" style="border:0px"></iframe>');
}
