function returnattr(tmpint){
	var attrval, newval;
	var lprice = 0;
	var currentrow = returnattr.arguments[0];

	testval = eval("document.frmOrder.test"+currentrow+".value");
	varlist = testval.split(")");

	if(varlist.length > 1){
		for(var i=0; i < varlist.length; i ++){
			if(i > 0){ 
				if(varlist[i].indexOf("(") != -1)
					attrval = attrval + varlist[i].substring(0,varlist[i].indexOf("("));
				else
					attrval = attrval + varlist[i].substring(0);
				
				tmpprice = parseFloat(varlist[i].substring(varlist[i].indexOf("$") + 1));
				if(!isNaN(tmpprice))
					lprice = lprice + parseFloat(varlist[i].substring(varlist[i].indexOf("$") + 1));
			}else{
				attrval = varlist[i].substring(0,varlist[i].indexOf("(") - 1);
				tmpprice = parseFloat(varlist[i].substring(varlist[i].indexOf("$") + 2));
				if(!isNaN(tmpprice))
					lprice = lprice + parseFloat(varlist[i].substring(varlist[i].indexOf("$") + 1));				
			}
		}
	}else
		attrval = varlist;

	if(lprice != 0)
		newval = attrval + " (+" + round_decimals(lprice, 2) + ")";
	else
		newval = attrval;
	
	eval("document.frmOrder.vwattr"+currentrow+"_Options.value = '" + newval +"'");
}

function returnname(tmpint){
	var attrval, newval;
	var currentrow = returnname.arguments[0];
	var myform = returnname.arguments[1];
	testval = eval("document.frmOrder.test"+currentrow+".value");
	varlist = testval.split(")");
	if(varlist.length > 1){
		for(var i=0; i < varlist.length; i ++){
			if(i > 0){ 
				if(varlist[i].indexOf("(") != -1)
					attrval = attrval + varlist[i].substring(0,varlist[i].indexOf("("));
				else
					attrval = attrval + varlist[i].substring(0);
			}else{
				attrval = varlist[i].substring(0,varlist[i].indexOf("(") - 1);
			}
		}
	}else
		attrval = varlist;

	newval = attrval;
	document.write(newval);
}

function returnprice(tmpint){
	var newval;
	var currentrow = returnprice.arguments[0];
	var lprice = parseFloat(eval("document.frmOrder.saleprice.value"));
	var multiplier = parseFloat(eval("document.frmOrder.multiplier.value"));
				
	if(!isNaN(lprice)){
		testval = eval("document.frmOrder.test"+currentrow+".value");
		varlist = testval.split(")");
		if(varlist.length > 1){
			for(var i=0; i < varlist.length; i ++){
				tmpprice = parseFloat(varlist[i].substring(varlist[i].indexOf("$") + 1));
				if(!isNaN(tmpprice))
					lprice = lprice + parseFloat(varlist[i].substring(varlist[i].indexOf("$") + 1));	
			}
		}
		newval = lprice * multiplier;
		document.write(Math.ceil(newval));
	}
	else
		document.write("-");
}

function returnsaleprice(tmpint){
	var newval;
	var currentrow = returnsaleprice.arguments[0];
	var lprice = parseFloat(eval("document.frmOrder.saleprice.value"));
				
	if(!isNaN(lprice)){
		testval = eval("document.frmOrder.test"+currentrow+".value");
		varlist = testval.split(")");
		if(varlist.length > 1){
			for(var i=0; i < varlist.length; i ++){
				tmpprice = parseFloat(varlist[i].substring(varlist[i].indexOf("$") + 1));
				if(!isNaN(tmpprice))
					lprice = lprice + parseFloat(varlist[i].substring(varlist[i].indexOf("$") + 1));	
			}
		}
		newval = lprice
		document.write(round_decimals(newval, 2));
	}
	else
		document.write("-");
}


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) {

    // Convert the number to a string
    var value_string = rounded_value.toString()
    
    // Locate the decimal point
    var decimal_location = value_string.indexOf(".")

    // Is there a decimal point?
    if (decimal_location == -1) {
        
        // If no, then all decimal places will be padded with 0s
        decimal_part_length = 0
        
        // If decimal_places is greater than zero, tack on a decimal point
        value_string += decimal_places > 0 ? "." : ""
    }
    else {

        // If yes, then only the extra decimal places will be padded with 0s
        decimal_part_length = value_string.length - decimal_location - 1
    }
    
    // Calculate the number of decimal places that need to be padded with 0s
    var pad_total = decimal_places - decimal_part_length
    
    if (pad_total > 0) {
        
        // Pad the string with 0s
        for (var counter = 1; counter <= pad_total; counter++) 
            value_string += "0"
        }
    return value_string
}
