function checkIfNumber(rVal)
{
    inLen = rVal.length;
    
    for(var i=0; i<inLen; i++) {
        var ch = rVal.substring(i,i+1);

        if (! (ch> "0" || "9"> ch || ch == ".") ) 
        {                         
            alert("Invalid Input, field resetting");
            return -1;
        }
    }
    
    return rVal;
}  

function updateResult()
{
    doWork();
    // if(sqr_feet>= 0) {document.form1.sqr_feet.value = sqr_feet;}
  	if(fieldtotal>= 0) {document.form1.result.value = fieldtotal;}
	//if(bordertotal>= 0) {document.form1.bordertotal.value = bordertotal;}
	window.focus();
}


function doWork()
{
    var widthft = checkIfNumber(document.form1.widthft.value); // check input
    if (widthft == -1) {                                           // -1 means invalid input
        document.form1.widthft.value = 0;                    // reset form field
        width = 0;                                               // zero out variable
    }
  
       
    var lengthft = checkIfNumber(document.form1.lengthft.value);
    if (lengthft == -1) {
        document.form1.lengthft.value = 0;
        lengthft = 0;
    }

	
	var lengthin = checkIfNumber(document.form1.lengthin.value);
    if (lengthin == -1) {
        document.form1.lengthin.value = 0;
        lengthin = 0;
    }

	
	var widthin = checkIfNumber(document.form1.widthin.value);
    if (widthin == -1) {
        document.form1.widthin.value = 0;
        widthin = 0;
    }


    // find square feet of tile
    // for some reason I had to cast from string to number ???
    length_total = Number(lengthft * 12) + Number(lengthin);
    width_total = Number(widthft * 12) + Number(widthin);
     
    sqr_feet = (length_total * width_total) / 144.0;
    if (sqr_feet != 0) { sqr_feet = Math.round(sqr_feet + 0.5);}      //return value unless adjusted by border


    // find bordertotal et. al
	/*if (document.form1.border.value != 0) {

	    //first establish size of tiles used
		bta_index = document.form1.bordertilesize.selectedIndex;
		b_tilewidth  = document.form1.bordertilesize[bta_index].value;
	    b_tilelength = getLength(document.form1.bordertilesize[bta_index].value);
		
		b_numtiles = document.form1.b_numtiles[document.form1.b_numtiles.selectedIndex].value;
		
    	length_tiles = Math.round((length_total - b_tilewidth * b_numtiles) / b_tilelength);
			
	    width_tiles = Math.round((width_total - b_tilelength * b_numtiles) / b_tilewidth);
		
	    // bordertotal is the return
	    // returns number of tiles needed to tile the border
	    bordertotal = (length_tiles * 2 + width_tiles * 2) * 1.1;
	    bordertotal = Math.round(bordertotal + 0.95); //set border total
		
		//adjust square footage for border
	    length_total = length_total - b_numtiles * b_tilelength;
	    width_total = width_total - b_numtiles * b_tilewidth;
	    sqr_feet = Math.round(length_total * width_total / 144.0);
		
	} else {
        bordertotal = 0;
	}*/
	
	bordertotal = 0;
	
	ta_selected = document.form1.tilesize.selectedIndex;	
	// tilearea = document.form1.tilesize[ta_selected].value * getLength(document.form1.tilesize[ta_selected].value);
	tilearea = document.form1.tilesize[ta_selected].value; //Now passed through from tile size
	fieldtotal = sqr_feet / (tilearea / 144) * 1.1;
	if (fieldtotal> 0) {fieldtotal = Math.round(fieldtotal);}       //return value field tiles used	
}

function getLength(width)
{   
    //return length of tile given width
    if(width == 2) {
        return 4;
    }
    else if (width == 4) {
        return 6;
    }
    else {
        return width;
    }
}
        
