<!--
//Copyright © 2002 - 2010 PracticeWEB Ltd
function ExplorerFix() {
	for (a in document.links) document.links[a].onfocus = document.links[a].blur;
}

//Disabled Explorer fix as it conflicts with js menus
//if (document.all) { document.onmousedown = ExplorerFix; }

function MM_openBrWindow(theURL,winName,features) { //v2.0
  window.open(theURL,winName,features);
}

function MM_jumpMenu(targ,selObj,restore){ //v3.0
  eval(targ+".location='"+selObj.options[selObj.selectedIndex].value+"'");
  if (restore) selObj.selectedIndex=0;
}

function writeDate() { // Written by Phil Collins of redweb, v1.0
  //Monday 11th March 2002
  var isNetscape = (navigator.appName.substring(0,8) == "Netscape") ? true : false;
  var today = new Date();
  var day = today.getDate();
  var year = today.getYear();
  var endDay = "th";
  var arrDayofWeek = new Array("Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday");
  var arrMonthNames = new Array("January","February","March","April","May","June","July","August","September","October","November","December");
  
  if (isNetscape) {year = (year - 1) + 1901;}
  if ((day == "1") || (day == "21") || (day == "31")) {endDay = "st";}
  if ((day == "2") || (day == "22")) {endDay = "nd";}
  if ((day == "3") || (day == "23")) {endDay = "rd";}
  document.write(arrDayofWeek[today.getDay()] + " " + day + endDay + " " + arrMonthNames[today.getMonth()] + " " + year);
}

function v_number(number)
{
	var digits="0123456789.£";
	if (number=="£") {return false;}
	if (number.length==0) {return false;}
	for (var i=0;i<number.length;i++){if (digits.indexOf(number.substring(i,i+1))==-1 && number.substring(i,i+1)!="."){return false;}}
	if (number<0) {return false;}
	return true;
}
                    
function formatCurrency(number)
{
    number = Math.round(number*100)/100;

	var decimalPos;
	var string = number.toString();
	var zerostring = "";
	
	decimalPos = string.indexOf(".");
	
	if (decimalPos != -1) {
	  if (string.charAt(decimalPos+2) == "") 
	  { zerostring = "0"; }
	} else {
	  zerostring = ".00";
	}
	
	return("£" + number + zerostring);

}

function calculateSavings(){

	//load values from form into variables

	var frm=document.savingscalc;
	var s=frm.start_figure.value;
	var d=frm.month_deposit.value;
	var r=frm.avg_interest.value;
	var f=frm.avg_inflation.value;
	var y=frm.num_years.value;
                   		
	//initialise those variables for calculation
	
    var i=0;
	var n=0;
	
	//validate inputs
	
	var errorMessage="";
	
	if (!v_number(s)) {errorMessage+="Starting figure,\n";}
	if (!v_number(d)) {errorMessage+="Monthly deposit,\n";}
	if (!v_number(r)) {errorMessage+="Average annual interest rate,\n";}
	if (!v_number(f)) {errorMessage+="Average annual inflation rate,\n";}
	if (!v_number(y)) {errorMessage+="Number of years,\n";}
	
	if (errorMessage.length!=0) 
	{alert("The following entries are incorrect:\n\n"+errorMessage+"\nPlease correct these entries and\ntry again.");return false;}
	
	if (s.substring(0,1)=="£") {s=s.substring(1);}
	if (d.substring(0,1)=="£") {d=d.substring(1);}

	s = parseInt(s);
	d = parseInt(d);	
	f = parseInt(f);                    	
	y = parseInt(y);
  
    r = ( r/100 );
    i = ( r/12 );

    n = y * 12;

    t = ( s * ( Math.pow(1+i,n) ) )   +   ( ( ( d * ( ( Math.pow(1+i,n) ) - 1) ) / i ) );
    p = ( t / ( Math.pow(1+(f/100),y) ) );
	
	//load text boxes with results
	frm.output_savings.value=formatCurrency(t);
	frm.output_value.value=formatCurrency(p);
	
	//var updateCapitalT = document.getElementById("variableT");
	//updateCapitalT.innerHTML = formatCurrency(t);
	frm.amountT.value = formatCurrency(t);
	
	reCalculateSavings( );
	
	
	return false;
}


function reCalculateSavings()
{

    var frm=document.savingscalc;

    var t = frm.output_savings; //.value;
    var tValue = t.value.replace("£",""); 
    var j = frm.variablePercent.value;
    var m = 0.0;
    var a = 0.0;

    var errorMessage="";
    if (!v_number(t.value)) {errorMessage+="Please calculate first\n";}

    if (errorMessage.length!=0) 
	{alert(errorMessage);return false;}
    else
    {
       
        if (!v_number(j)) 
        {errorMessage+="Interest Rate,\n";}

    	if (errorMessage.length!=0) 
	    {alert("The following entries are incorrect:\n\n"+errorMessage+"\nPlease correct these entries and\ntry again.");return false;}
        
        
        t = parseFloat(tValue);
	    j = parseInt(j);	
        
        var k = 0.0;
        
        k = j / 100;
        m = t * k / 12;
        
        var a1 = Math.pow( 1 + (k / 12), 12);
        var a2 = a1 * t;
        var a3 = a2 - t;
        a = a3;
        
        //a = Math.pow( t* (1+k/12) , 12 ) - t;
        
        var mFormatted = formatCurrency(m);
        var aFormatted = formatCurrency(a); 
        
        //frm.monthlyIncome.value = m;
        //frm.annualIncome.value = a;
        
        frm.monthlyIncome.value = mFormatted.replace("", "");
        frm.annualIncome.value = aFormatted.replace("", "");
    }   
}
//-->
