/* ---------------------------
' (C) Copyright 2008
' Niro Solutions Pty Limited
' ABN 89 106 967 140
' ---------------------------
' Revision: 2.0.0
' Author: Zhongbo Sun
' Modtime: 05/11/09/08

' --------------------------- */

function runOnLoad(){
    calcInt = setInterval(calculateIt, 50);
    enableFields();

}

function parseUndefinedInt(val){
  return (val=="" || parseInt(val)==false) ? 0 : parseInt(val);
}

function checkNaN(val){
  return (val=="" || isNaN(val)==true) ? 0 : val;
}

function checkINF(val){
  return (val=="" || isFinite(val)==false) ? 0 : val;
}

function recalcAmount(field){
    
  f = document.forms.calcForm;
  changedTo=parseUndefinedInt(f[field].value);
  f[field].value=(isNaN(changedTo)==true)?0:changedTo;
}

function calculateIt(){
  f = document.forms.calcForm;
      
  // Monthly Living Expenses
  MTotal = parseUndefinedInt(f.rent.value)+parseUndefinedInt(f.transport.value)+parseUndefinedInt(f.myhome.value)+parseUndefinedInt(f.food.value)+parseUndefinedInt(f.education.value)+parseUndefinedInt(f.other.value);
  f.MTotal.value=(Math.round(MTotal));  
    
  // Sick Leave
  sickMTotal = parseUndefinedInt(f.sick.value)
  f.sickMTotal.value=(Math.round((sickMTotal*12/52)*100))/100;  
  
  // Liquid Assets
  FundsTotal = parseUndefinedInt(f.cash.value)+parseUndefinedInt(f.savings.value)+parseUndefinedInt(f.MFunds.value)+parseUndefinedInt(f.shares.value)+parseUndefinedInt(f.otherFunds.value);
  f.FundsTotal.value=(Math.round(FundsTotal));  
  
  // Your Survival Period
  MSurvival = (Math.round(parseFloat(parseFloat(f.sickMTotal.value) + (parseFloat(FundsTotal)/parseFloat(MTotal)))*100))/100;
  MSurvival = checkNaN(MSurvival);
  MSurvival = checkINF(MSurvival);
  f.MSurvival.value = MSurvival
  f.DSurvival.value = (Math.round(parseFloat(f.MSurvival.value)*365/12));
  f.DateSurvival.value = getDT(f.DSurvival.value);
  
 }
 
function getDT(days)
	{
		var today = new Date() 
		today.setDate(today.getDate()+ parseUndefinedInt(days) + 1);
		var dd=""+today.getDate()
		var mm=""+(today.getMonth()+1)
		var yy=""+today.getYear()
		if (yy.length == 3) {
        yy = '20' + yy.slice(1,3);
        }
		return (dd.length>1?dd:("0"+dd)) + "/" + (mm.length>1?mm:("0"+mm)) + "/" + yy
	}
	
function enableFields()
{
    f = document.forms.calcForm;
    if (f.rdEmployed[0].checked==false)
        {f.sick.value = 0;
		 f.sick.contentEditable = false ;
		 f.sick.disabled = true ;
		 f.sick.style.display = "none";
		 document.getElementById("divSick").style.display = "none";
		 document.getElementById("ExampleSick").innerHTML = '0';
		 document.getElementById("ExampleSickM").innerHTML = '<b>0</b>';
		 document.getElementById("ExampleT1").innerHTML = '<b>1.5</b>';
		 document.getElementById("ExampleT2").innerHTML = '<b>46</b>';
		}
	else
	    {
	     f.sick.value = 0;
		 f.sick.contentEditable = true ;
		 f.sick.disabled = false ;
		 f.sick.style.display = "";
		 
		 document.getElementById("divSick").style.display = "";
		 document.getElementById("ExampleSick").innerHTML = '2';
		 document.getElementById("ExampleSickM").innerHTML = '<b>0.46</b>';
		 document.getElementById("ExampleT1").innerHTML = '<b>1.96</b>';
		 document.getElementById("ExampleT2").innerHTML = '<b>60</b>';
		 }
	sDays = (f.rdEmployed[0].checked==false)?46:60;
	document.getElementById("ExampleSDate").innerHTML = '<B>' + getDT(sDays) + '</B>';
}



function intOnly(field) 
{ 
    if (field != undefined )
    {
        var m_strOut = new String(field.value); 
        m_strOut = m_strOut.replace(/[^0-9]/g, ''); 
        
        if (field.value != m_strOut)
            {field.value = m_strOut} 

    }
}
