﻿function FIND(obj) {
	return document.getElementById(obj);
}
function switchImg(mode) {
	var img = FIND("main-image");
	var ins = FIND("main-inset");
	if (img && ins) {
		if (mode == 1) {
			ins.style.display = "none";
			img.style.display = "block";
		} else {
			ins.style.display = "block";
			img.style.display = "none";
		}
	}
}
function addFuncsToOnLoadBody(obj, mode) {
	if (mode) {
		if (window.addEventListener)
			window.addEventListener("load", initOptionPrice, false);
		else if (window.attachEvent)
			window.attachEvent("onload", initOptionPrice);
	}

	if (obj.addEventListener)
		obj.addEventListener("load", P7_initPM, false);
	else if (obj.attachEvent)
		obj.attachEvent("onload", P7_initPM);
}

function obj(thumb, image, name)
{
	this.thumb = thumb;
	this.image = image;
	this.name = name;
}

function showinsets(ar)
{
	var str = "";
	w1=window.open('','w1','width=775,height=500,status=no,toolbar=no,menubar=no,location=no,resizable=yes,scrollbars=yes');
	w1.document.open();
	w1.document.write("<html><head>");
	w1.document.write("<style type=\"text/css\">.center-img{height:330px;}*html .center-img{height:315px;}body{margin:0px;padding:0px;}h2{font:bold 1.2em Georgia,Arial,Verdana;color:#335e9e;}</style>");
	w1.document.write("<title>Image Zoom<\/title><META HTTP-EQUIV=\"Pragma\" CONTENT=\"no-cache\"><META HTTP-EQUIV=\"Expires\" CONTENT=\"-1\"><\/head><body>");
	if (imgPopupHeader)
		w1.document.write(imgPopupHeader);
	w1.document.write("<table width=\"100%\"  border=\"0\" cellspacing=\"0\" cellpadding=\"10\"><tr>");
	if (ar.length > 1) {
	w1.document.write("<td><table><tr><td style=\"border:1px solid #CCC;\" width=\"120\" valign=\"top\" align=\"center\"><h2 style=\"font:normal 14px Arial;\">Click To View</h2>");
	for (i=0; i<ar.length; i++){
		str = "<img alt=\"";
		str += ar[0].name;
		str += "\" src=\"";
		str += ar[i].thumb;
		str += "\" style=\"cursor:pointer;\" onclick=\"document.getElementById('holder').src = '";
		str += ar[i].image;
		str += "';\"><br><br>";
		w1.document.write(str);
	}
	w1.document.write("</td></tr></table></td>");
	}
	w1.document.write("<td class=\"center-img\" valign=\"top\" align=\"center\">");
	w1.document.write("<h2>" + ar[0].name + "</h2><br><br>");	
		str = "<img";
		str += " alt=\"" + ar[0].name + "\" id=\"holder\" src=\"";
		str += ar[0].image;
		str += "\">";
		w1.document.write(str);
	w1.document.write("</td></tr></table>");
	w1.document.write("<center><a href=\"javascript:window.close();\"><img src=\"/lib/originalbyj/close.gif\" border=\"0\"><\/a></center>");
	if (imgPopupFooter)
		w1.document.write(imgPopupFooter);
	w1.document.close();
	w1.focus();
}

function round_decimals(original_number, decimals) {
    var result1 = original_number * Math.pow(10, decimals)
    var result2 = Math.round(result1)
    var result3 = result2 / Math.pow(10, decimals)
    return pad_with_zeros(result3, decimals)
}

function pad_with_zeros(rounded_value, decimal_places) {
    var value_string = rounded_value.toString()
    var decimal_location = value_string.indexOf(".")
    if (decimal_location == -1) {
        decimal_part_length = 0
        value_string += decimal_places > 0 ? "." : ""
    }
    else {
        decimal_part_length = value_string.length - decimal_location - 1
    }
    var pad_total = decimal_places - decimal_part_length
    if (pad_total > 0) {
        for (var counter = 1; counter <= pad_total; counter++) 
            value_string += "0"
        }
    return value_string
}

function validateValues(what) {
    var valid = true;
        
    var checkBoxes = false;
    var checkboxChecked = false;
        
    var radioButtons = false;
    var radioChecked = false;
        
    for (var i=0, j=what.elements.length; i<j; i++) {
        myType = what.elements[i].type;
        if (myType == 'radio') {
            radioButtons = true;
           if (what.elements[i].checked) radioChecked = true;
        }
        if (myType == 'checkbox') {
            checkBoxes = true;
            if (what.elements[i].checked) checkboxChecked = true;
        }
    }

    if ((checkBoxes && !checkboxChecked) || (radioButtons && !radioChecked)) valid = false;

    if (!valid)
        alert('Please choose all options.');

    return valid;
}

function toDollarsAndCents(n) {
  var s = "" + Math.round(n * 100) / 100;
  var i = s.indexOf('.');
  if (i < 0) return s + ".00";
  var t = s.substring(0, i + 1) + s.substring(i + 1, i + 3);
  if (i + 2 == s.length) t += "0";
  return t;
}

function toDollarsAndcents2(n) {
    var s = "" + Math.round(n * 100) / 100;
    var i = s.indexOf('.');
    if (i < 0) {
        var fiprice = '';
        var price = s.split('');
        var len = 0;
        for(var i=0; i < price.length; i++){
            while(len != price.length) {
                var a = len%3;
                fiprice += price[len];
                len += 1;
                alert(price.length);
                if((a == 0)&&(len < price.length)&&(price.length > 3)) { fiprice += ","; }
            }
        }
        return fiprice + ".00";
    }
    var t = s.substring(0, i + 1) + s.substring(i + 1, i + 3);
    if (i + 2 == s.length) t += "0";
    return t;
}

function toDollarsAndcents3(n) {
    var price = n;
    var newprice = "";
    var reg = /\d+/;
    var str = reg.exec(price);
    var strstr = str + "";
    var arr = strstr.split("");
    var inc = arr.length-1;
    for(var i=0; i<arr.length; i++){
	    var val = inc%3;
	    inc-=1;
	    if(val==0 && inc!=-1){
		    newprice += arr[i] + ",";
	    } else {
		    newprice += arr[i];
	    }
    }
    return newprice + ".00";
}



/* function toDollarsAndCents(n) {
  var s = "" + Math.round(n * 100) / 100
  var i = s.indexOf('.')
  if (i < 0) return s + ".00"
  var t = s.substring(0, i + 1) + s.substring(i + 1, i + 3)
  if (i + 2 == s.length) t += "0"
  return t
} */


function initOptionPrice() {
	var findelement = FIND("orderform"); 
	findelement.reset();
	updateOptionPrice(findelement);
}

function updateOptionPrice(thisform,thisinput){
	var price = basePrice;
	var thedifference = 0;
	var pricevalAr = new Array();
	var direction = "add";
	var modPrice = "";
	if(price != "")
		price = parseFloat(price);
	else
		price = 0;

	for(i=0;i<thisform.elements.length;i++){ 
		priceval = 0;
		pricevalAr = 0;
		if(thisform.elements[i].type == "select-one"){
			priceval = thisform.elements[i].options[thisform.elements[i].selectedIndex].value
			
			if(priceval.indexOf("(+$") > -1) {
				pricevalAr = priceval.split("(+$");
				direction = "add";
			}else if(priceval.indexOf("(+") > -1) {
				pricevalAr = priceval.split("(+");
				direction = "add";
			}else if(priceval.indexOf("(-") > -1) {
				pricevalAr = priceval.split("(-");
				direction = "sub";
			}else if(priceval.indexOf("(-$") > -1) {
				pricevalAr = priceval.split("(-$");
				direction = "sub";
			}else if(priceval.indexOf("(*") > -1) {
				pricevalAr = priceval.split("(*");
				direction = "mult";
			}
			if(pricevalAr.length > 1){
				priceval = pricevalAr[1].split(")");
				priceval = parseFloat(priceval[0]);
			} else {
				priceval = 0;
			} 
			if(direction == "add")
				price = price + priceval
			else if(direction == "sub")
				price = price - priceval
			else {
				thedifference = (price * priceval) - price;
				price = price * priceval;
				if(thisinput) thisinput.value = pricevalAr[0] + "(+" + round_decimals(thedifference,2) + ")";
			}
		} else {
			if(thisform.elements[i].type == "radio"){
				if(thisform.elements[i].checked){
					priceval = thisform.elements[i].value;
					
					fullinput = priceval;
					if(priceval.indexOf("(+$") > -1) {
						pricevalAr = priceval.split("(+$");
						direction = "add";
					} else if(priceval.indexOf("(+") > -1) {
						pricevalAr = priceval.split("(+");
						direction = "add";
					} else if(priceval.indexOf("(-") > -1) {
						pricevalAr = priceval.split("(-");
						direction = "sub";
					}else if(priceval.indexOf("(-$") > -1) {
						pricevalAr = priceval.split("(-$");
						direction = "sub";
					}else if(priceval.indexOf("(*") > -1) {
						pricevalAr = priceval.split("(*");
						direction = "mult";
					}
					if(pricevalAr.length > 1){
						priceval = pricevalAr[1].split(")");
						priceval = parseFloat(priceval[0]);
					}else
						priceval = 0;
					if(direction == "add")
						price = price + priceval
					else if(direction == "sub")
						price = price - priceval
					else {
						thedifference = (price * priceval) - price;
						price = price * priceval;
						if(thisinput) thisinput.value = pricevalAr[0] + " (+" + round_decimals(thedifference,2) + ")";
					}
				}
			}
		}
	}

	modPrice = modPrice + "$" + toDollarsAndcents3(price);
//	modPrice = modPrice + "$" + price;

	if (document.all) {
	   dispprice.innerHTML = modPrice;
	} else if (document.getElementById) {
		document.getElementById("dispprice").innerHTML = modPrice;
        }
	
}
