﻿var finance={
    timer:null,
    format : function(num,point){
		num = num.toString().replace(/\$|\,/g,'');
		if(isNaN(num))
		num = "0";
		sign = (num == (num = Math.abs(num)));
		num = Math.floor(num*100+0.50000000001);
		cents = num%100;
		num = Math[(point===true)?"floor":"round"](num/100).toString();
		if(cents<10)
		cents = "0" + cents;
		for (var i = 0; i < Math.floor((num.length-(1+i))/3); i++)
		num = num.substring(0,num.length-(4*i+3))+','+
		num.substring(num.length-(4*i+3));
		return (((sign)?'':'-') + '' + num + ((point===true)?'.' + cents:''));
	},
    init:function(){
        var _this=this;
        var input=$("#boxfinance input:text");
        var cal=function(){
            if($.trim(input.val())=="") return;
            var amount=parseFloat(input.val().replace(/,/gi,"")||"0");
            input.val(_this.format(amount));
            var rule=0;
            if(amount<=30000)
                rule=0;
            else if(amount>=30001&&amount<=50000)
                rule=1;
            else if(amount>=50001&&amount<=80000)
                rule=2;
            else
                rule=3;
            var el=$("table.tablemoney");
            $("th",el).each(function(i){
                var rel=eval("("+$(this).attr("rel")+")");
                $("td:eq("+i+")",el).html(_this.format(rel[rule]*amount));
            });
        };
        cal();       
		input.keyup(function(){
           clearTimeout(_this.timer);
            _this.timer = setTimeout(function(){
                cal();
            },800); 
		}).keydown(function(e){
		    clearTimeout(_this.timer);
		    if(e.keyCode==13){
		        cal();
		        return false;
		    }
            return true;
		}).click(function(){
		    input.focus().select();
		}).blur(function(){
		    clearTimeout(_this.timer);
		    if($.trim(input.val())=="") input.val("0");
		    cal();
		});
    }
};
$(function(){
	finance.init();
});
