function uppercase()
{
    key = window.event.keyCode;
    if ((key > 0x60) && (key < 0x7B))
        window.event.keyCode = key-0x20;
}

function change_case(obj)
{
    document.getElementById(obj).value=document.getElementById(obj).value.toUpperCase();
}

function change_case_2(obj)
{
    document.getElementById(obj).value=document.getElementById(obj).value.toUpperCase();
	var text = document.getElementById(obj).value;
	if (text!="S" && text!="SP" && text!="O")
	{
		document.getElementById(obj).value = "";
	}
}

function change_case_1(obj)
{
    document.getElementById(obj).value=document.getElementById(obj).value.toUpperCase();
	var text = document.getElementById(obj).value;
	if (text!="PR" && text!="SH" && text!="IP")
	{
		document.getElementById(obj).value = "";
	}
}


function ReCalculate_3(obj) 
{
	var frm = document.getElementById(obj);
	var bNegative = 0;
	if (frm.value.charAt(0) == "-") 
	{ 
		bNegative = 1;
		frm.value = frm.value.substring(1, frm.value.length);
	}
		
	var money = GetValue(frm.value); 
	if (bNegative>0)
	{
		money = "-"+money;
	}
	
    if(money!="")
    {
    	money = FormatCurrency_3(money);
	    //money =  RemoveCents(money);
	}
	frm.value = money;
}


function ReCalculate(obj) 
{
	var frm = document.getElementById(obj);
	var bNegative = 0;
	if (frm.value.charAt(0) == "-") 
	{ 
		bNegative = 1;
		frm.value = frm.value.substring(1, frm.value.length);
	}
		
	var money = GetValue(frm.value); 
	
	if (bNegative>0)
	{
		money = "-"+money;
	}
	
    if(money!="")
    {
    	money = FormatCurrency(money);
	    //money =  RemoveCents(money);
	}
	frm.value = money;
}

// only for Summary2: Est Mthly Life Ins Pmt*
function ReCalculate3(obj) 
{
	var frm = document.getElementById(obj);
    var bNegative = 0;
    
	if ((frm.value =="NA") || (frm.value=="na"))
	{
        frm.value = "NA";
	}
	else
	{
	    if (frm.value.charAt(0) == "-") 
	    { 
		    bNegative = 1;
		    frm.value = frm.value.substring(1, frm.value.length);
	    }
	    
  	    var money = GetValue(frm.value); 
  	    if (bNegative>0)
	    {
		    money = "-"+money;
	    }
  	    
  	    if(money!="")
        {
	        money = FormatCurrency(money);
	        //money =  RemoveCents(money);
	    }
	    frm.value = money;
	}
}

function ReCalculate2(obj) 
{
	var frm = document.getElementById(obj);
	var bNegative = 0;
	 
	if (frm.value.charAt(0) == "-") 
	{ 
		bNegative = 1;
		frm.value = frm.value.substring(1, frm.value.length);
	}
	
	var money = GetValue(frm.value); 
	if (bNegative>0)
	{
		money = "-"+money
	}
	if(money!="")
    {
	    money = FormatCurrency(money);
	    money =  RemoveCents(money);
	}
	frm.value = money;
}

function ZoomValuePopup(value)
{
	var url = "arm_zoom.aspx?v="+value;
	var rtnValue = new Array();
	var Left_Position = (screen.width) ? (screen.width-640)/2 : 0;
	var Top_Position = (screen.height) ? (screen.height-320)/2 : 0;
	var opt = 'toolbar=0, menubar=0, location=0, resizable=1, scrollbars=1, width=640, height=320, left=' + Left_Position + ', top=' + Top_Position;
	var wChild = window.open(url, "wChild", opt);
	wChild.focus();
}

function GetValue(sValue)
{
    var sRaw = "";
    var sChar = "";
    var bHasDecimal = 0;
    var i = 0;

    sValue += "";
    for (i=0; i <= sValue.length; i++) 
	{
        sChar = sValue.substring(i, i+1);
        if (sChar == ".") 
		{
            bHasDecimal = 1;
            sRaw = sRaw + sChar;
        }
        else 
			if ((sChar >= "0") && (sChar <= "9")) 
			{
            	sRaw = sRaw + sChar;
        	}
    }

    if (bHasDecimal) 
	{ 
		//binh.tang 03May2008
        //return parseFloat(sRaw);
		return sRaw;
    }
    else if (sRaw.length > 0) 
	{
		//binh.tang 03May2008
		//return parseInt(sRaw);
		return sRaw;
    }
    else 
	{
        //return 0;
        return "";
    }
}

// $27,000.190 - 3 so le sau dau cham thap phan.
function FormatCurrency_3(iValue) 
{
	//alert(iValue.replace(/,/g, ""));
	//iValue = Math.round(iValue);
	
    var bIsNegative = 0;
    var iPos = 0;
    var sChar = "";
    var sTempNumber = "";
    var sNoChars = "";
    var sDollars = "";
    var sCents = "";
    var sDollarAmount = "";
    var sFormated = "";
    var x = 0;

    if (iValue != "") {
        sTempNumber = iValue + "";
        if (sTempNumber.charAt(0) == "-") { 
            bIsNegative = 1;
            sTempNumber = sTempNumber.substring(1, sTempNumber.length);
        }

        for (x=0; x<=((sTempNumber.length)-1); x++) {
            sChar = sTempNumber.charAt(x);
            if ( ((sChar >= "0") & (sChar <= "9")) || (sChar == ".")  ) { 
                sNoChars += sTempNumber.charAt(x) 
            }
        }
        sTempNumber = sNoChars; // return: 27000.19

		IndexOfDec = sTempNumber.indexOf(".");

        if (IndexOfDec == -1) {
            sDollars = sTempNumber;
            sCents = "000";
        }
        else if (IndexOfDec == 0) {
            sDollars = "0";
            sCents = sTempNumber.substring(IndexOfDec + 1, sTempNumber.length);
        }
        else {
            sDollars = sTempNumber.substring(0, IndexOfDec);
			
            if (IndexOfDec == (sTempNumber.length - 1)) {
                sCents = "000"; 
            }
            else {
                sCents = GetValue(sTempNumber.substring(IndexOfDec + 1, sTempNumber.length));
				//binh.tang 03May2008
                sCents += "0";
				sCents = sCents.charAt(0) + sCents.charAt(1) + sCents.charAt(2); //binh.tang: chi lay 2 so le sau dau cham thap than
            }
        }// return: 19

        sFormated = sDollars;
        x = sDollars.length; 
        iPos = 0;
        while (x > 0) 
		{
            x--;
            sChar = sDollars.charAt(x); 
            rounded = Math.round(iPos/3); 
            if ( (iPos/3 == rounded ) & (iPos != 0) ) {
                sDollarAmount = "," + sDollarAmount;
            }
            sDollarAmount = sChar +  sDollarAmount;
            iPos++;
        } // return: 27,000
		
		

        if (bIsNegative) {
            //sFormated = "$" + sDollarAmount + "." + sCents;
			if (IndexOfDec==-1)
			{
				sFormated = "-"+sDollarAmount;
			}
			else
			{
				sFormated = "-"+sDollarAmount + "." + sCents;
			}
        }
        else { 
            //sFormated = "$" + sDollarAmount + "." + sCents;
			
			if (IndexOfDec==-1)
			{
				sFormated = sDollarAmount;
			}
			else
			{
				sFormated = sDollarAmount + "." + sCents;
			}
        }
		
		
        return (sFormated);
    }
    else {

        //return("$0.00");
		//return("0.00");
		return "0";
    }
}


// $27,000.19
function FormatCurrency(iValue) 
{
	//alert(iValue.replace(/,/g, ""));
	//iValue = Math.round(iValue);
    var bIsNegative = 0;
    var iPos = 0;
    var sChar = "";
    var sTempNumber = "";
    var sNoChars = "";
    var sDollars = "";
    var sCents = "";
    var sDollarAmount = "";
    var sFormated = "";
    var x = 0;

    if (iValue != "") {
        sTempNumber = iValue + "";
        if (sTempNumber.charAt(0) == "-") { 
            bIsNegative = 1;
            sTempNumber = sTempNumber.substring(1, sTempNumber.length);
        }

		var point = 0;
        for (x=0; x<=((sTempNumber.length)-1); x++) 
		{
            sChar = sTempNumber.charAt(x);
            if ( ((sChar >= "0") & (sChar <= "9")) || (sChar == ".") ) 
			{ 
                sNoChars += sTempNumber.charAt(x); 
            }
        }
        sTempNumber = sNoChars; // return: 27000.19

		IndexOfDec = sTempNumber.indexOf(".");
	
        if (IndexOfDec == -1) {
            sDollars = sTempNumber;
            sCents = "00";
        }
        else if (IndexOfDec == 0) {
            sDollars = "0";
            sCents = sTempNumber.substring(IndexOfDec + 1, sTempNumber.length);
        }
        else {
            sDollars = sTempNumber.substring(0, IndexOfDec);
			
            if (IndexOfDec == (sTempNumber.length - 1)) {
                sCents = "00"; 
            }
            else {
                sCents = GetValue(sTempNumber.substring(IndexOfDec + 1, sTempNumber.length));
				//binh.tang 03May2008
                sCents += "0";
				sCents = sCents.charAt(0) + sCents.charAt(1); //binh.tang: chi lay 2 so le sau dau cham thap than
            }
        }// return: 19

        sFormated = sDollars;
        x = sDollars.length; 
        iPos = 0;
        while (x > 0) 
		{
            x--;
            sChar = sDollars.charAt(x); 
            rounded = Math.round(iPos/3); 
            if ( (iPos/3 == rounded ) & (iPos != 0) ) {
                sDollarAmount = "," + sDollarAmount;
            }
            sDollarAmount = sChar +  sDollarAmount;
            iPos++;
        } // return: 27,000
		
		

        if (bIsNegative) {
            //sFormated = "$" + sDollarAmount + "." + sCents;
			sFormated = "-"+sDollarAmount + "." + sCents;
        }
        else { 
            //sFormated = "$" + sDollarAmount + "." + sCents;
			sFormated = sDollarAmount + "." + sCents;
        }
        return (sFormated);
    }
    else {

        //return("$0.00");
		//return("0.00");
		return "0";
    }
}

// 6.375%
function FormatPercent(iValue,iDecimalPlaces) {

    iValue = GetValue(iValue);
    if (iValue < 1) { 
        iValue = iValue * 100;
    }
    with (Math) iValue = (round(iValue * pow(10,iDecimalPlaces))) / pow(10,iDecimalPlaces);
    return(iValue + "%");
}

// $12,200.00 --> $12,200
function RemoveCents(iValue) 
{
    var bNegative = 0;
    var iPos = 0;
    var IndexOfDec = 0;
    var sDollarAmount = "";
    var x = 0;

    if (iValue != "") {

        // Evaluate to a string
        var sTempNumber = iValue + "";

        if (sTempNumber.charAt(0) == "-") { 
            bNegative = 1;
            sTempNumber = sTempNumber.substring(1, sTempNumber.length);
        }

        iValue = GetValue(sTempNumber);

        iValue = Math.round(iValue * 100) / 100;
        iValue = iValue + "";
        IndexOfDec = iValue.indexOf(".");

        if (IndexOfDec == -1) {
            sDollars = iValue;
        }
        else if (IndexOfDec == 0) {
            sDollars = 0;
        }
        else {
            sDollars = iValue.substring(0, IndexOfDec);
        }

        var sDollarAmount = "";
        x=sDollars.length;
        iPos = 0;
        while (x > 0) {
            x--;
            sChar = sDollars.charAt(x);
            rounded = Math.round(iPos/3);
            if ( (iPos/3 == rounded ) & (iPos != 0) ) {
                sDollarAmount = "," + sDollarAmount;
            }
            sDollarAmount = sChar +  sDollarAmount;
            iPos++;
        }

        if (bNegative == 1) {
            //sFormated = "-$" + sDollarAmount;
			sFormated = "-" + sDollarAmount;
        }
        else { 
            //sFormated = "$" + sDollarAmount;
			sFormated = sDollarAmount;
        }

        //sDollars = "$" + sDollarAmount;
		sDollars = sDollarAmount;
        return(sFormated);
    }
    else {
        //return("$0");
		//return("0");
        return "";
    }
}

function roundNumber(rnum) 
{
	var rnum = rnum;
	var rlength = 2; // The number of decimal places to round to
	if (rnum > 8191 && rnum < 10485) {
		rnum = rnum-5000;
		var newnumber = Math.round(rnum*Math.pow(10,rlength))/Math.pow(10,rlength);
		newnumber = newnumber+5000;
	} else {
		var newnumber = Math.round(rnum*Math.pow(10,rlength))/Math.pow(10,rlength);
	}
	return newnumber;
}
