﻿// JScript File
  function calc(myForm){
        var baseValue = getBaseValue(myForm) ; 
        //alert(baseValue) ; 
        var c1 = (myForm.NumAgents1.value == "") ? 0 : parseInt(myForm.NumAgents1.value) ; 
        var c2 = (myForm.NumAgents2.value == "") ? 0 : c1 * parseInt(myForm.NumAgents2.value) ; 
        var c3 = (myForm.NumAgents3.value == "") ? 0 : c2 * parseInt(myForm.NumAgents3.value) ; 
        var c4 = (myForm.NumAgents4.value == "") ? 0 : c3 * parseInt(myForm.NumAgents4.value) ; 
        var c5 = (myForm.NumAgents5.value == "") ? 0 : c4 * parseInt(myForm.NumAgents5.value) ; 
        var c6 = (myForm.NumAgents6.value == "") ? 0 : c5 * parseInt(myForm.NumAgents6.value) ; 
        var c7 = (myForm.NumAgents7.value == "") ? 0 : c6 * parseInt(myForm.NumAgents7.value) ; 
        
        var o1 = c1 * baseValue * 0.5 ; //parseInt(calcGen1(myForm, myForm.NumAgents1.value));
        var o2 = c2 * baseValue * 0.1 ; //parseInt(calcGen1(myForm, (myForm.NumAgents1.value * myForm.NumAgents2.value)));
        var o3 = c3 * baseValue * 0.08 ; //parseInt(calcGen1(myForm, ((myForm.NumAgents1.value * myForm.NumAgents2.value)* myForm.NumAgents3.value)));
		var o4 = c4 * baseValue * 0.08 ; //parseInt(calcGen1(myForm, (((myForm.NumAgents1.value * myForm.NumAgents2.value)* myForm.NumAgents3.value)* myForm.NumAgents4.value)));
		var o5 = c5 * baseValue * 0.08 ; //parseInt(calcGen1(myForm, ((((myForm.NumAgents1.value * myForm.NumAgents2.value)* myForm.NumAgents3.value)* myForm.NumAgents4.value)* myForm.NumAgents5.value)));
		var o6 = c6 * baseValue * 0.08 ; //parseInt(calcGen1(myForm, (((((myForm.NumAgents1.value * myForm.NumAgents2.value)* myForm.NumAgents3.value)* myForm.NumAgents4.value)* myForm.NumAgents5.value)* myForm.NumAgents6.value)));
		var o7 = c7 * baseValue * 0.08 ; //parseInt(calcGen1(myForm, ((((((myForm.NumAgents1.value * myForm.NumAgents2.value)* myForm.NumAgents3.value)* myForm.NumAgents4.value)* myForm.NumAgents5.value)* myForm.NumAgents6.value)* myForm.NumAgents7.value)));
       
        document.getElementById("divTotal_1").innerHTML = addCommas(c1)  ; 
        document.getElementById("divTotal_2").innerHTML = addCommas(c2) ; 
        document.getElementById("divTotal_3").innerHTML = addCommas(c3) ; 
        document.getElementById("divTotal_4").innerHTML = addCommas(c4) ; 
        document.getElementById("divTotal_5").innerHTML = addCommas(c5) ; 
        document.getElementById("divTotal_6").innerHTML = addCommas(c6) ; 
        document.getElementById("divTotal_7").innerHTML = addCommas(c7) ;//(c7,0,false,false,true) ; 
        //var 01 = parseInt(
        /*
	    if (myForm.NumAgents1.value < 5)
            o2 = 0
            
        if (myForm.NumAgents2.value < 10 )
            o3 = 0;
			
		if (myForm.NumAgents3.value < 10 )
            o4 = 0;
			
		if (myForm.NumAgents4.value < 10 )
            o5 = 0;
			
		if (myForm.NumAgents5.value < 10 )
            o6 = 0;
			
		if (myForm.NumAgents6.value < 10 )
            o7 = 0;
        */
        //var myTotal = parseInt(o1) + parseInt(o2) + parseInt(o3) + parseInt(o4) + parseInt(o5) + parseInt(o6) + parseInt(o7);
        var myTotal = o1 + o2 + o3 + o4 + o5 + o6 + o7;


        myForm.residual1.value = addCommas(o1.toFixed(2));
        myForm.residual2.value = addCommas(o2.toFixed(2));
        myForm.residual3.value = addCommas(o3.toFixed(2));
		myForm.residual4.value = addCommas(o4.toFixed(2));
		myForm.residual5.value = addCommas(o5.toFixed(2));
		myForm.residual6.value = addCommas(o6.toFixed(2));
		myForm.residual7.value = addCommas(o7.toFixed(2));
                    
        myForm.Total.value = addCommas(myTotal.toFixed(2));
    }

    
    function calcGen1(myForm, Num){       
        if (myForm.GCI.value != '' && myForm.ClosedSales.value !=''){
            //return ( ( ( ( (cleanNum(myForm.GCI.value) * cleanNum(myForm.ClosedSales.value)) * 0.8) * .05) * (Num)) );
            
            return cleanNum(myForm.GCI.value) * cleanNum(myForm.ClosedSales.value) * 0.4 * 0.05 ;
        }else{
            return 0;
        }

    }
    
    function getBaseValue(myForm){       
        if (myForm.GCI.value != '' && myForm.ClosedSales.value !=''){
            return cleanNum(myForm.GCI.value) * cleanNum(myForm.ClosedSales.value) * 0.4 * 0.05 ;
        }else{
            return 0;
        }
    }
    function cleanNum(value){
        var tmp = value
        
        tmp = removeCommas(tmp);
        //tmp = Math.round(tmp);
        
        return tmp
    }
    
    function formatCtl(obj){
        //var txt = addCommas(obj.value);
        var tmp = 0 ; 
        if (obj.value != ""){
            var num = parseFloat(cleanNum(obj.value)) ; 
            if (num > 100000) {
                alert("GCI cannot be more than 100,000.  Please try again.") ; 
            }else {
                tmp = num ; 
                //return false ; 
                //obj.value = addCommas(num.toFixed(2));
            }
        }
        
        obj.value = addCommas(tmp.toFixed(2)) ; 
    }
    function addCommas(nStr)
    {
        
        nStr += '';
	    x = nStr.split('.');
	    x1 = x[0];
	    x2 = x.length > 1 ? '.' + x[1] : '';
	    var rgx = /(\d+)(\d{3})/;
	    while (rgx.test(x1)) {
		    x1 = x1.replace(rgx, '$1' + ',' + '$2');
	    }
	    return x1 + x2;
	    
    }

    // version: beta
// created: 2005-08-30
// updated: 2005-08-31
// mredkj.com
function extractNumber(obj, decimalPlaces, allowNegative)
{
	var temp = obj.value;
	
	// avoid changing things if already formatted correctly
	var reg0Str = '[0-9]*';
	if (decimalPlaces > 0) {
		reg0Str += '\\.?[0-9]{0,' + decimalPlaces + '}';
	} else if (decimalPlaces < 0) {
		reg0Str += '\\.?[0-9]*';
	}
	reg0Str = allowNegative ? '^-?' + reg0Str : '^' + reg0Str;
	reg0Str = reg0Str + '$';
	var reg0 = new RegExp(reg0Str);
	if (reg0.test(temp)) return true;

	// first replace all non numbers
	var reg1Str = '[^0-9' + (decimalPlaces != 0 ? '.' : '') + (allowNegative ? '-' : '') + ']';
	var reg1 = new RegExp(reg1Str, 'g');
	temp = temp.replace(reg1, '');

	if (allowNegative) {
		// replace extra negative
		var hasNegative = temp.length > 0 && temp.charAt(0) == '-';
		var reg2 = /-/g;
		temp = temp.replace(reg2, '');
		if (hasNegative) temp = '-' + temp;
	}
	
	if (decimalPlaces != 0) {
		var reg3 = /\./g;
		var reg3Array = reg3.exec(temp);
		if (reg3Array != null) {
			// keep only first occurrence of .
			//  and the number of places specified by decimalPlaces or the entire string if decimalPlaces < 0
			var reg3Right = temp.substring(reg3Array.index + reg3Array[0].length);
			reg3Right = reg3Right.replace(reg3, '');
			reg3Right = decimalPlaces > 0 ? reg3Right.substring(0, decimalPlaces) : reg3Right;
			temp = temp.substring(0,reg3Array.index) + '.' + reg3Right;
		}
	}
	
	obj.value = temp;
}
function blockNonNumbers(obj, e, allowDecimal, allowNegative)
{
	var key;
	var isCtrl = false;
	var keychar;
	var reg;
		
	if(window.event) {
		key = e.keyCode;
		isCtrl = window.event.ctrlKey
	}
	else if(e.which) {
		key = e.which;
		isCtrl = e.ctrlKey;
	}
	
	if (isNaN(key)) return true;
	
	keychar = String.fromCharCode(key);
	
	// check for backspace or delete, or if Ctrl was pressed
	if (key == 8 || isCtrl)
	{
		return true;
	}

	reg = /\d/;
	var isFirstN = allowNegative ? keychar == '-' && obj.value.indexOf('-') == -1 : false;
	var isFirstD = allowDecimal ? keychar == '.' && obj.value.indexOf('.') == -1 : false;
	
	return isFirstN || isFirstD || reg.test(keychar);
}


function removeCommas(aNum) {

    //remove any commas

    aNum=aNum.replace(/,/g,"");

    //remove any spaces

    aNum=aNum.replace(/\s/g,"");

    return aNum;

}//end of removeCommas(aNum


