// JavaScript Document
var selectedMatType = 0;
var selectedMatColor = -1;
var selectedOutsideDim = -1;
var selectedInsideDim = -1;

var mattingType = new Array();
var mattingColor = new Array();
var outsideDimensions = new Array();
var insideDimensions = new Array();
var matColorPreview = new Array();
var matPrice = new Array();
var matColorID = new Array();

var i;
var j;

function matTypeSelected(matTypeID) {
	selectedMatType = matTypeID;
	selectedMatColor = -1;
	populateSelectMenu("matColor", mattingColor[matTypeID], "Select Color...");
	resetStep(2, 2);
}

function matColorSelected(){
	var matColorObj = document.standardMatForm.matColor;
	var matColorID = matColorObj.options[matColorObj.selectedIndex].value;
	if (matColorID >= 0) {
		selectedMatColor = matColorID;
		populateSelectMenu("outsideDim", outsideDimensions, "Select Dimensions...");
		resetStep(3, 3)
	} else {
		selectedMatColor = -1;
		resetStep(3, 2);
	}
}

function outsideDimsSelected(){
	var outDimObj = document.standardMatForm.outsideDim;
	var outDimID = outDimObj.options[outDimObj.selectedIndex].value;
	if (outDimID >= 0) {
		selectedOutsideDim = outDimID;
		populateSelectMenu("insideDim", insideDimensions[outDimID], "Select Opening Dimensions...");
		resetStep(4, 4);
	} else {
		selectedOutsideDim = -1;
		resetStep(4, 3);
	}
}

function insideDimsSelected(){
	var inDimObj = document.standardMatForm.insideDim;
	var inDimID = inDimObj.options[inDimObj.selectedIndex].value;
	if (inDimID >= 0) {
		selectedInsideDim = inDimID;
		document.standardMatForm.design_id.value = matColorID[selectedMatType][selectedMatColor];
		document.standardMatForm.outside_dims.value = outsideDimensions[selectedOutsideDim];
		document.standardMatForm.inside_dims.value = insideDimensions[selectedOutsideDim][selectedInsideDim];
		var matBoardDimensions = outsideDimensions[selectedOutsideDim].split(" x ");
		var matBoardPrice = ((matBoardDimensions[0] * matBoardDimensions[1]) / 144) * matPrice[selectedMatType][selectedMatColor];
		if (matBoardDimensions[0] > 28 && matBoardDimensions[1] > 28) {
			$("#shippingSurcharge").show();	
		} else {
			$("#shippingSurcharge").hide();
		}
		if (matBoardPrice < 7) {
			$("#matCutFee").html("You must purchase " + Math.ceil(7 / matBoardPrice) + " of these<br />mats to avoid a $2.95 cut fee");	
			$("#matCutFee").show();
		} else {
			$("#matCutFee").hide();
		}
		$("#matBoardConfiguration").html("<p>" + getProductDescription().replace(/ x /g, "\" x ") + "</p>");
		$("#matBoardConfigurationPrice").html("<p><strong>Price:</strong> $" + matBoardPrice.toFixed(2) + " each</p>");
		resetStep(5, 5);
	} else {
		selectedInsideDim = -1;
		resetStep(5, 4);
	}
}

function resetStep(step, currentStep){
	switch(step){
		case 2:
			$("#colorPreview").attr("src", "images/mbconfig/nopreview.gif");
		case 3:
			if (currentStep == 3){
				$("#colorPreview").attr("src", "images/mbsmall/" + matColorPreview[selectedMatType][selectedMatColor]);
				$("#outsideDimensions").attr("src", "images/mbconfig/outside_dim/" + matColorPreview[selectedMatType][selectedMatColor]);
				$("#insideDimensions").attr("src", 'images/mbconfig/inside_dim_rectangle/' + matColorPreview[selectedMatType][selectedMatColor]);
				$("#outsideDimForm").show();
			} else {
				$("#colorPreview").attr("src", "images/mbconfig/nopreview.gif");
				$("#outsideDimensions").attr("src", "images/mbconfig/outsidedimensions.jpg");
				$("#insideDimensions").attr("src", "images/mbconfig/insidedimensions.jpg");	
				$("#outsideDimForm").hide();
			}
		case 4:
			if (currentStep == 4){
				$("#insideDimForm").show();
			} else {
				$("#insideDimForm").hide();
			}
		case 5:
			if (currentStep == 5){
				$("#statusMsg").hide();
				$("#addToCartInfo").show();
			} else {
				$("#statusMsg").show();
				$("#addToCartInfo").hide();
			}
	}
	
	statusText = false;
	switch(currentStep){
		case 2: statusText = "Please complete Steps 2, 3 and 4"; break;
		case 3: statusText = "Please complete Steps 3 and 4"; break;
		case 4: statusText = "Please complete Step 4"; break;
	}
	
	if (statusText) $("#statusMsg").text(statusText);
}

function getProductDescription(){
	var matBoardDimensions = outsideDimensions[selectedOutsideDim].split(" x ");
	var matBoardPrice = ((matBoardDimensions[0] * matBoardDimensions[1]) / 144) * matPrice[selectedMatType][selectedMatColor];
	var desc = "<strong>Your Selection:</strong><ul><li><strong>Type:</strong> " + mattingType[selectedMatType] + "</li><li><strong>Color:</strong> " + mattingColor[selectedMatType][selectedMatColor] + "</li><li><strong>Dimensions:</strong> " + outsideDimensions[selectedOutsideDim] + "\"</li><li><strong>Opening Size:</strong> " + insideDimensions[selectedOutsideDim][selectedInsideDim].replace(/ \(/g, "\" (").replace(/\)/g, "\")") + "</li>";
	if (insideDimensions[selectedOutsideDim][selectedInsideDim] != "Blank - No Opening") desc = desc + "<li><strong>Opening Type:</strong> Rectangle</li></ul>";
	return desc.replace(/(\.)5/g, " 1/2");
}