<!-- Begin
function claricalc(form) {
bt = form.bt.value*1;
cardrate = form.cardrate.value*1/100;
tempcardrate = (1+cardrate);
monthlycardrate = Math.pow(tempcardrate,(1/12))-1;
fee = (form.fee.value)*1/100;
cap = form.cap.value*1;
months = form.months.value*1;
if (months != parseInt(months) || (months<0))
    {
    alert(months +" is not a valid number of months. You can only enter a whole number such as 0, 1, 2 etc.");
    return;
    }
minpay = (form.minpay.value)*1;
potrate = (form.potrate.value)*1/100;
temppotrate = (1+potrate);
monthlypotrate = Math.pow(temppotrate,(1/12))-1;
tax = form.tax.value;
mpaytype = form.mpaytype.value;
if (mpaytype=="P")
    {
    minpay=minpay/100;
    }
btfee = bt*fee;
if (cap!=0 && cap<btfee)
    {
    btfee=cap;
    }
cardbalance=bt+btfee;
potbalance=bt;
earnings=0;
totalearnings=0;
totalcardint=0;
totalminpay=0;
totalpotint=0;
monthlycardinterest=0;
monthlyearnings=0;
monthlypayment=0;
for (i = 0; i < months; i++)
     {
     monthlycardinterest=(cardbalance-btfee)*monthlycardrate;
     totalcardint=totalcardint+monthlycardinterest
     if (mpaytype=="F")
         {
         monthlypayment=minpay;
         }
     else
         {
         monthlypayment=cardbalance*minpay;
         }
     totalminpay=totalminpay+monthlypayment;
     monthlyearnings=potbalance*monthlypotrate;
     totalpotint=totalpotint+monthlyearnings;
     totalearnings=totalearnings+monthlyearnings;
     potbalance=potbalance-monthlypayment+monthlyearnings;
     cardbalance=cardbalance-monthlypayment+monthlycardinterest;
     }
if (tax=="N")
    {
    taxtopay = 0;
    }
if (tax=="B")
    {
    taxtopay = totalearnings*0.2;
    }
if (tax=="H")
    {
    taxtopay = totalearnings*0.4;
    }
if (tax=="S")
    {
    taxtopay = totalearnings*0.1;
    }
profit=potbalance-cardbalance-taxtopay;
profit = Math.round(profit*100)/100;
form.profit.value = profit;
}
//  End -->
<!--percent increase-->


<!--
function calctmf(form)                                  /* Sets TMF specific variables for Format routine */
{
/* get browser type */
if (navigator.userAgent.indexOf("MSIE") != -1) {
    browser="IE"; }
  else if (navigator.userAgent.indexOf("Firefox") != -1) {
    browser="Firefox"; }
  else if (navigator.userAgent.indexOf("Navigator") != -1) {
    browser="Netscape"; }
  else if (navigator.userAgent.indexOf("Opera") != -1 ) {
    browser="Opera"; }
  else {
    browser="other";
    }
startelement="&lt;pre&gt;";
endelement="&lt;/pre&gt;";
boldtag="&lt;b&gt;";
endboldtag="&lt;/b&gt;";
italtag="&lt;i&gt;";
enditaltag="&lt;/i&gt;";
website="The Motley Fool";
webshort="TMF";
if (browser=="IE")
    {
    cr="&lt;br /&gt;";
    }
else
    {
    cr="";
    }
calcformat(form);
}
//  -->



<!--
function calcmsoc(form)                          /* Sets variables specific to MSOC for Format routine */
{
/* get browser type */

if (navigator.userAgent.indexOf("MSIE") != -1) {
    browser="IE"; }
  else if (navigator.userAgent.indexOf("Firefox") != -1) {
    browser="Firefox"; }
  else if (navigator.userAgent.indexOf("Navigator") != -1) {
    browser="Netscape"; }
  else if (navigator.userAgent.indexOf("Opera") != -1 ) {
    browser="Opera"; }
  else {
    browser="other";
    }
startelement="[tt]";
endelement="[/tt]";
boldtag="[b]";
endboldtag="[/b]";
italtag="[i]";
enditaltag="[/i]";
website="the Official Stoozing Website";
webshort="Stoozing.com";
if (browser=="IE")
    {
    cr="[br]";
    }
else
    {
    cr="";
    }
calcformat(form);
}
//  -->

<!--
function calcmse(form)                          /* Sets variables specific to MSOC for Format routine */
{
/* get browser type */

if (navigator.userAgent.indexOf("MSIE") != -1) {
    browser="IE"; }
  else if (navigator.userAgent.indexOf("Firefox") != -1) {
    browser="Firefox"; }
  else if (navigator.userAgent.indexOf("Navigator") != -1) {
    browser="Netscape"; }
  else if (navigator.userAgent.indexOf("Opera") != -1 ) {
    browser="Opera"; }
  else {
    browser="other";
    }
startelement="[font=courier new]";
endelement="[/font]";
boldtag="[b]";
endboldtag="[/b]";
italtag="[i]";
enditaltag="[/i]";
website="Moneysavingexpert";
webshort="MSE";
/* if (browser=="IE")
    {
    cr="[br]";
    }
else
    {
    cr="";
    }                 */
cr="";
calcformat(form);
}
//  -->

<!--
function calcformat(form)
{
/* ***************************** */
/* FORMAT FOR TMF & MSOC ROUTINE */
/* ***************************** */
claricalc(form);    /* Force re-calc of results before formatting */

/* Create Window and write header */
msg ="Here are your anticipated Stoozing profits. If you want feedback, you can highlight, copy and paste everything (yes, I mean everything) below the line into a post on the ";
msg = msg + webshort + " website. " ;
msg = msg + "<br /><br />";
msg = msg + "<h6>Copy and paste EVERYTHING below</h6>";
msg = msg + "<br /><br />" ;

/*msg = msg + "<pre>" ;  

/* Writes pre tag to force monospaced font on display here */
msg = msg + startelement  ;  
/* Writes tag to force monospaced font in destination discussion board! */
msg = msg + boldtag;
msg = msg + cr + "Stoozing Profit Prediction "   ;
msg = msg + endboldtag   ;
msg = msg + "<br /><br />";

 /* Create Entered data */
msg = msg + boldtag   ;
msg = msg + cr +cr +"Data entered by the user"   ;
msg = msg + endboldtag   ;
msg = msg + "<br />" +cr +"Balance to be transferred (pounds)...... " +bt;
msg = msg + "<br />" +cr +"BT card interest rate (%) .............. " +cardrate*100;
msg = msg + "<br />" +cr +"Introductory period (months) ........... " +months;
msg = msg + "<br />" +cr +"Balance Transfer Fee (%) ............... " +fee*100;
if (cap==0)
    {
    dcap="No Maximum";
    }
else
    {
    dcap=cap;
    }
msg = msg + "<br />" +cr +"Maximum BT Fee (pounds)................. " +dcap;

if (mpaytype=="P")
    {
    minpay=minpay*100;
    dmpaytype="Percentage";
    }
else
    {
    dmpaytype="Fixed";
    }
msg = msg + "<br />" +cr +"Min Monthly Payment Type ............... " +dmpaytype;
msg = msg + "<br />" +cr +"Min Monthly Payment Amount (% or pds) .. " +minpay;
dpotrate=potrate*100;
dpotrate= Math.round(dpotrate*100)/100;
msg = msg + "<br />" +cr +"Savings interest rate (AER %) .......... " +dpotrate;
if (tax=="N")
    {
    dtax = "Not taxed or offset";
    }
if (tax=="B")
    {
    dtax = "Basic Rate";
    }
if (tax=="H")
    {
    dtax = "Higher Rate";
    }
if (tax=="S")
    {
    dtax = "Starter Rate";
    }
msg = msg + "<br />" +cr +"Tax rate ............................... " +dtax;
msg = msg + "<br /><br />";

/* Create Results */
msg = msg + boldtag   ;
msg = msg + cr +cr +"Your Results"   ;
msg = msg + endboldtag   ;
grossprofit=potbalance-cardbalance;
grossprofit = Math.round(grossprofit*100)/100;
potbalance = Math.round(potbalance*100)/100;
cardbalance = Math.round(cardbalance*100)/100;
taxtopay = Math.round(taxtopay*100)/100;
msg = msg + "<br />" +cr +"Balance Transfer Fee paid (pounds)...... " +btfee;
msg = msg + "<br />" +cr +"Stooz pot balance at end of intro ...... " +potbalance;
msg = msg + "<br />" +cr +"Credit card balance at end of intro .... " +cardbalance;
msg = msg + "<br />" +cr +"Gross Profit before tax on interest .... " +grossprofit;
msg = msg + "<br />" +cr +"Tax on interest to be paid ............. " +taxtopay;
msg = msg + boldtag   ;
msg = msg + "<br />" +cr +"Your Profit (pounds).................... " +profit;
msg = msg + endboldtag   ;

msg = msg + "<br /><br />";
msg = msg + italtag   ;
 if (website!="the Official Stoozing Website")
    {
    msg = msg + cr + cr + "Created using the Stoozing Calculator at www.stoozing.com. "   ;
    msg = msg + "<br />Reproduced on " + website + " with permission.";
    }
msg = msg + enditaltag   ;
msg = msg + endelement   ;

document.getElementById('myAnchor').innerHTML=msg ;
}
//  -->

<!--
function calcdetail(form)
{
var mydate = new Date();
startmonth=mydate.getMonth();
var monthname=new Array("January","February","March","April","May","June","July","August","September","October","November","December");
bt = form.bt.value*1;
cardrate = form.cardrate.value*1/100;
tempcardrate = (1+cardrate);
monthlycardrate = Math.pow(tempcardrate,(1/12))-1;
fee = (form.fee.value)*1/100;
cap = form.cap.value*1;
months = form.months.value*1;
if (months != parseInt(months) || (months<0))
    {
    alert(months +" is not a valid number of months. You can only enter a whole number such as 0, 1, 2 etc.");
    return;
    }
minpay = (form.minpay.value)*1;
potrate = (form.potrate.value)*1/100;
temppotrate = (1+potrate);
monthlypotrate = Math.pow(temppotrate,(1/12))-1;
tax = form.tax.value;
mpaytype = form.mpaytype.value;
if (mpaytype=="P")
    {
    minpay=minpay/100;
    }
btfee = bt*fee;
if (cap!=0 && cap<btfee)
    {
    btfee=cap;
    }
cardbalance=bt+btfee;
potbalance=bt;
earnings=0;
totalearnings=0;
totalcardint=0;
totalminpay=0;
totalpotint=0;
monthlycardinterest=0;
monthlyearnings=0;
monthlypayment=0;
/* Create Window and write header */
var myWindow=window.open('','','width=700, height=600, scrollbars=yes, toolbar=yes, location=yes, resizable=yes, menubar=yes') ;
myWindow.document.write('<h1>Stoozing Profit - Month by Month Detail</h1>')   ;
myWindow.document.write('<h3>Monthly balances, interest and payments</h3>')   ;
msg='<table><tr><td width="70%">Balance Transferred</td><td align="right" width="20%">' +bt +'</td></tr>';
myWindow.document.write(msg)   ;
msg='<tr><td width="70%">Balance Transfer Fee</td><td align="right" width="20%">' +btfee +'</td></tr></table>';
myWindow.document.write(msg)   ;
msg='<p></p>' ;
myWindow.document.write(msg)   ;
msg='<table><tr><td width="15%"><b>Month</b></td><td align="right" width="17%"><b>Card Interest(&pound;)</b></td><td align="right" width="17%"><b>Min Payment(&pound;)</b></td><td align="right" width="17%"><b>Card Balance(&pound;)</b></td><td align="right" width="17%"><b>Pot Interest(&pound;)</b></td><td align="right" width="17%"><b>Pot Balance(&pound;)</b></td></tr>'   ;
myWindow.document.write(msg)   ;

thismonth=startmonth;
if (thismonth>=12)
    {
    thismonth=thismonth-12;
    }
dmonth=monthname[thismonth];
dcardbalance=cardbalance.toFixed(2)    ;
dmonthlyinterest=monthlycardinterest.toFixed(2);
dmonpay=monthlypayment.toFixed(2);
dpotbal = potbalance.toFixed(2) ;
dpotint = monthlyearnings.toFixed(2);

/* dpotbal = Math.round(potbalance*100)/100; */
/* dmonpay = Math.round(monthlypayment*100)/100; */
/* dmonthlyinterest = Math.round(monthlycardinterest*100)/100; */
/* dcardbalance = Math.round(cardbalance*100)/100; */
/* dpotint = Math.round(monthlyearnings*100)/100; */
msg='<tr><td>' +dmonth +'</td><td align="right">' +dmonthlyinterest +'</td><td align="right">' +dmonpay +'</td><td align="right">' +dcardbalance +'</td><td align="right">' +dpotint +'</td><td align="right">' +dpotbal +'</td></tr>' ;
myWindow.document.write(msg)   ;
for (i = 0; i < months; i++)
     {
     monthlycardinterest=(cardbalance-btfee)*monthlycardrate;
     totalcardint=totalcardint+monthlycardinterest;
     if (mpaytype=="F")
         {
         monthlypayment=minpay;
         }
     else
         {
         monthlypayment=cardbalance*minpay;
         }
     totalminpay=totalminpay+monthlypayment;
     monthlyearnings=potbalance*monthlypotrate;
     totalpotint=totalpotint+monthlyearnings;
     totalearnings=totalearnings+monthlyearnings;
     potbalance=potbalance-monthlypayment+monthlyearnings;
     cardbalance=cardbalance-monthlypayment+monthlycardinterest;
     thismonth=startmonth+i+1;
     if (thismonth>=12)
         {
         thismonth=thismonth-12;
         }
     dmonth=monthname[thismonth];

     dcardbalance=cardbalance.toFixed(2)    ;
     dmonthlyinterest=monthlycardinterest.toFixed(2);
     dmonpay=monthlypayment.toFixed(2);
     dpotbal = potbalance.toFixed(2) ;
     dpotint = monthlyearnings.toFixed(2);

/*     dcardbalance = Math.round(cardbalance*100)/100;
     dmonthlyinterest = Math.round(monthlycardinterest*100)/100;
     dmonpay = Math.round(monthlypayment*100)/100;
     dpotbal = Math.round(potbalance*100)/100;
     dpotint = Math.round(monthlyearnings*100)/100; */

     msg='<tr><td>' +dmonth +'</td><td align="right">' +dmonthlyinterest +'</td><td align="right">' +dmonpay +'</td><td align="right">' +dcardbalance +'</td><td align="right">' +dpotint +'</td><td align="right">' +dpotbal +'</td></tr>' ;
     myWindow.document.write(msg)   ;
     }
dtotalcardint=totalcardint.toFixed(2)    ;
dtotalminpay=totalminpay.toFixed(2)    ;
dtotalpotint=totalpotint.toFixed(2)    ;
dnull='--';
msg='<tr><td><i>Totals</i></td><td align="right"><i>' +dtotalcardint +'</i></td><td align="right"><i>' +dtotalminpay +'</i></td><td align="right">' +dnull +'</td><td align="right"><i>' +dtotalpotint +'</i></td><td align="right">' +dnull +'</td></tr>' ;
     myWindow.document.write(msg)   ;
myWindow.document.write('</table>')   ;
if (tax=="N")
    {
    taxtopay = 0;
    }
if (tax=="B")
    {
    taxtopay = totalearnings*0.2;
    }
if (tax=="H")
    {
    taxtopay = totalearnings*0.4;
    }
if (tax=="S")
    {
    taxtopay = totalearnings*0.1;
    }
profit=potbalance-cardbalance-taxtopay;

/* profit = earnings-btfee; */
grossprofit=potbalance-cardbalance;
/* dgrossprofit=Math.round(grossprofit*100)/100;
dprofit = Math.round(profit*100)/100;
dtaxtopay=Math.round(taxtopay*100)/100; */

dgrossprofit=grossprofit.toFixed(2);
dprofit=profit.toFixed(2);
dtaxtopay=taxtopay.toFixed(2);

myWindow.document.write('<h3>Profit Calculation</h3>')   ;
msg='<table><tr><td width="70%">Stooz pot balance at end of introductory period</td><td align="right" width="20%">' +dpotbal +'</td></tr>' ;
myWindow.document.write(msg)   ;
msg='<tr><td>Credit card balance at end of introductory period</td><td align="right">' +dcardbalance +'</td></tr>' ;
myWindow.document.write(msg)   ;
msg='<tr><td>Gross profit before tax</td><td align="right">' +dgrossprofit +'</td></tr>' ;
myWindow.document.write(msg)   ;
msg='<tr><td>Tax to be paid on interest</td><td align="right">' +dtaxtopay +'</td></tr>' ;
myWindow.document.write(msg)   ;
msg='<tr><td>Predicted net profit for this stoozing card</td><td align="right">' +dprofit +'</td></tr>' ;
myWindow.document.write(msg)   ;

myWindow.document.write('</table>')   ;
myWindow.document.close();
}
