// JavaScript Document
var TotalPaymentFactored;

function EREmoneyFormat(mnt)
{
	mnt-=0;
	mnt=(Math.round(mnt*100))/100;
	if(mnt==Math.floor(mnt))
	{
		mnt=mnt+'.00'
	}
	else
	{
		if(mnt*10==Math.floor(mnt*10))
		{
			mnt=mnt+'0'
		}
	}
	return'$'+mnt
}	
	
function moneyFormat(num)
{
	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.floor(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)
}

function fmtMoney(number)
{
	floatPoint=2;
	decimalSep='.';
	thousandsSep=',';
	(number+'').match(/(\d+)(?:\.(\d+)|)/);
	
	with(RegExp)
	{
		var frac=floatPoint?decimalSep+Number('.'+$2).toFixed(floatPoint).substr(2):'';
		alert('$ '+((x=$1.length%3)?$1.substr(0,x)+thousandsSep:'')+$1.substr(x).replace(/(\d{3})(?=\d)/g,'$1'+thousandsSep)+frac);
		
		return'$ '+((x=$1.length%3)?$1.substr(0,x)+thousandsSep:'')+$1.substr(x).replace(/(\d{3})(?=\d)/g,'$1'+thousandsSep)+frac
	}
}

function SetHeight(big,small,element,info)
{
	//alert('Trace 3 big:'+ big + ' small:'+small+' element:'+element+' info:'+info);
	imageHeight=Math.round((small/big)*100);
	growImage(element,imageHeight);
	$(element).title=info;
	$(element).alt=info
}

function growImage(element,goal)
{
	//alert('Trace 4 element:'+ element + ' goal:'+goal);
	if(parseInt($(element).style.height)<goal&&parseInt($(element).style.height)<100)
	{
		$(element).style.height=Number(parseInt($(element).style.height)+1)+'px';
		my_timeout=setTimeout('growImage(\''+element+'\',\''+goal+'\');',25)
	}
	if(parseInt($(element).style.height)>goal)
	{
		$(element).style.height=Number(parseInt($(element).style.height)-1)+'px';
		my_timeout=setTimeout('growImage(\''+element+'\',\''+goal+'\');',25)
	}
}

function CalcCycle(debt,interest,min)
{
	TotalPaymentFactored=0;
	TotalCycles=0;
	currentDebt=debt;
	monthInterest=interest/12;
	
	while(currentDebt>0)
	{
		payment=currentDebt*min;
		if(payment<25)
		{
			payment=25
		}
		
		TotalPaymentFactored+=payment;
		waste=currentDebt*monthInterest;
		currentDebt=currentDebt-(payment-waste);
		TotalCycles++
	}
	return TotalCycles
}
	
function calcForm()
{	    
	//alert('Trace 1');	
	TotalUnsecuredDebt=document.getElementById('userTotalUnsecuredDebt').value.replace('$','');	
	TotalUnsecuredDebt=TotalUnsecuredDebt.replace(',','');
	//alert('Trace 2 '+TotalUnsecuredDebt);
	AvgInterestRate=$('userAvgInterestRate').value.replace('%','')/100;
	
	if($('creditorDuration').value==1)
	{
		if(TotalUnsecuredDebt<=20000)
		{
			ProgramPeriod=30
		}
		else
		{
			ProgramPeriod=32
		}
	}
	else
	{
		if(TotalUnsecuredDebt<=8000)
		{
			ProgramPeriod=21
		}
		if(TotalUnsecuredDebt<=9000&&TotalUnsecuredDebt>8000)
		{
			ProgramPeriod=23
		}
		if(TotalUnsecuredDebt<=10000&&TotalUnsecuredDebt>9000)
		{
			ProgramPeriod=26
		}
		if(TotalUnsecuredDebt<=11999&&TotalUnsecuredDebt>10000)
		{
			ProgramPeriod=28
		}
		if(TotalUnsecuredDebt<=20999&&TotalUnsecuredDebt>=12000)
		{
			ProgramPeriod=30
		}
		if(TotalUnsecuredDebt<=30999&&TotalUnsecuredDebt>=21000)
		{
			ProgramPeriod=32
		}
		if(TotalUnsecuredDebt<=40999&&TotalUnsecuredDebt>=31000)
		{
			ProgramPeriod=34
		}
		if(TotalUnsecuredDebt>=41000)
		{
			ProgramPeriod=36
		}
	}
	
	$('afsTotalUnsecuredDebt').innerHTML=moneyFormat(TotalUnsecuredDebt);
	$('dcTotalUnsecuredDebt').innerHTML=moneyFormat(TotalUnsecuredDebt);
	$('ccTotalUnsecuredDebt').innerHTML=moneyFormat(TotalUnsecuredDebt);
	$('dnTotalUnsecuredDebt').innerHTML=moneyFormat(TotalUnsecuredDebt);
	$('afsMonthsToPayOff').innerHTML=ProgramPeriod;
	
	if(AvgInterestRate*100==Math.floor(AvgInterestRate*100))
	{
		displayInterestRate=AvgInterestRate*100+'.0'
	}
	else
	{
		displayInterestRate=AvgInterestRate*100
	}
	
	$('dnInterestRate').innerHTML=Math.round(displayInterestRate*100)/100+'%';
	nothingDuration=CalcCycle(TotalUnsecuredDebt,AvgInterestRate,0.025);
	afs_fee=TotalUnsecuredDebt*0.14;
	TotalCost=(TotalUnsecuredDebt*0.4)+afs_fee;
	TotalMonthlyPayment=TotalCost/ProgramPeriod;
	
	$('afsYourTotalCost').innerHTML=moneyFormat(TotalCost);
	$('afsMonthlyPayment').innerHTML=moneyFormat(TotalMonthlyPayment);
	
	MonthlyPayment=(TotalUnsecuredDebt*(AvgInterestRate/12))/(1-Math.pow(1+(AvgInterestRate/12),-1*ProgramPeriod));
	IntrestPaid=(MonthlyPayment*ProgramPeriod)-TotalUnsecuredDebt;
	dccInterestRate=0.11;
	dccMonthlyPayment=(TotalUnsecuredDebt*(dccInterestRate/12))/(1-Math.pow(1+(dccInterestRate/12),-1*60));
	
	$('dcMonthlyPayment').innerHTML=moneyFormat(dccMonthlyPayment);
	dccExtraInterestPaid=(dccMonthlyPayment*60)-TotalUnsecuredDebt;
	$('dcExtraInterestPaid').innerHTML=moneyFormat(dccExtraInterestPaid);
	dccTotalCost=(dccMonthlyPayment*60);
	$('dcYourTotalCost').innerHTML=moneyFormat(dccTotalCost);
	dnnMonthlyPayment=TotalUnsecuredDebt*0.03;
	$('dnMonthlyPayment').innerHTML=moneyFormat(dnnMonthlyPayment);
	dnnExtraInterestPaid=TotalPaymentFactored-TotalUnsecuredDebt;
	$('dnExtraInterestPaid').innerHTML=moneyFormat(dnnExtraInterestPaid);
	dnnTotalCost=TotalPaymentFactored;
	$('dnYourTotalCost').innerHTML=moneyFormat(dnnTotalCost);
	$('dnMonthsToPayOff').innerHTML=nothingDuration;
	cccRate=Math.round((AvgInterestRate*0.95)*100)/100;
	cccMonthlyPayment=dnnMonthlyPayment*0.95;
	$('ccMonthlyPayment').innerHTML=moneyFormat(cccMonthlyPayment);
	cccExtraInterestPaid=(cccMonthlyPayment*60)-TotalUnsecuredDebt;
	$('ccExtraInterestPaid').innerHTML=moneyFormat(cccExtraInterestPaid);
	cccTotalCost=(cccMonthlyPayment*60);
	$('ccYourTotalCost').innerHTML=moneyFormat(cccTotalCost);
	//$('maxmonthly').innerHTML=moneyFormat(dnnMonthlyPayment);
	//$('medmonthly').innerHTML=moneyFormat(dnnMonthlyPayment/2);
	
	//SetHeight(dnnMonthlyPayment,dnnMonthlyPayment,'Monthlydonothing','Do Nothing - '+moneyFormat(dnnMonthlyPayment));
//	SetHeight(dnnMonthlyPayment,dccMonthlyPayment,'Monthlydebtcon','Debt Consolidation - '+moneyFormat(dccMonthlyPayment));
	//SetHeight(dnnMonthlyPayment,cccMonthlyPayment,'Monthlycreditco','Credit Counseling - '+moneyFormat(cccMonthlyPayment));
	//SetHeight(dnnMonthlyPayment,TotalMonthlyPayment,'Monthlycds','Clear Debt Solution - '+moneyFormat(TotalMonthlyPayment));
	//SetHeight(100,270,'Timedonothing','Do Nothing - 270 months');
	//SetHeight(100,60,'Timedebtcon','Debt Consolidation - 60 Months');
	//SetHeight(100,60,'Timecreditco','Credit Counseling - 60 Months');
	//SetHeight(100,ProgramPeriod,'Timecds','Clear Debt Solution - '+ProgramPeriod+' Months');
	
	TUS=TotalUnsecuredDebt;
	
	if(TUS<29999)
	{
		filter=50000
	}
	if(TUS>=30000&&TUS<=49999)
	{
		filter=90000
	}
	if(TUS>=50000&&TUS<=99999)
	{
		filter=190000
	}
	if(TUS>=100000&&TUS<=149999)
	{
		filter=300000
	}
	if(TUS>=150000)
	{
		filter=TUS*2+100000
	}
	//$('TDtop').innerHTML=moneyFormat(filter)+'+';
	//$('TDmed').innerHTML=moneyFormat(filter/2);
	//SetHeight(filter,dnnTotalCost,'donothing','Do Nothing - '+moneyFormat(dnnTotalCost));
	//SetHeight(filter,dccTotalCost,'debtcon','Debt Consolidation - '+moneyFormat(dccTotalCost));
	//SetHeight(filter,cccTotalCost,'creditco','Credit Counseling - '+moneyFormat(cccTotalCost));
	//SetHeight(filter,TotalCost,'cds','Clear Debt Solution - '+moneyFormat(TotalCost))
}