var $j = jQuery.noConflict();

function formatCurrency(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 + '.' + cents);
}


$j(document).ready(function() {

    // if on comparison rate page, update posted date in the disclaimer
    if ($j('#hidden_posted_date').val()) {
        $j('#posted_date').html($j('#hidden_posted_date').val());
    }

    /* manage tooltips */
    $j('.stepicon').hover(
        function () {
            // check if step has tooltip
            if ($j(this).parent().find('.tooltip').html()) {
                $j(this).parent().find('.tooltip').fadeIn("fast");
            }
            
        }, 
        function () {
            if ($j(this).parent().find('.tooltip').html()) {
                $j(this).parent().find('.tooltip').fadeOut("fast");
            }
        }
    );
    
    $j('#resultscharttitle .help').live({
        mouseenter:
            function() {
                // check if step has tooltip
                if ($j(this).parent().find('.tooltip').html()) {
                    $j(this).parent().find('.tooltip').fadeIn("fast");
                }
            },
        mouseleave:
            function () {
                if ($j(this).parent().find('.tooltip').html()) {
                    $j(this).parent().find('.tooltip').fadeOut("fast");
                }
            }
        }
    );
    
    /* submenu */
    $j('#topmenu li').hover(
        function () {
            // check if menu item has children
            if ($j(this).children('.children').html() != null) {
                $j(this).children('.children').slideDown();
            }
        }, 
        function () {
            if ($j(this).children('.children').html() != null) {
                $j(this).children('.children').slideUp();
            }
        }
    );
    $j('#mainnav li').hover(
        function () {
            // check if menu item has children
            if ($j(this).children('.children').html() != null) {
                $j(this).children('.children').slideDown();
            }
        }, 
        function () {
            if ($j(this).children('.children').html() != null) {
                $j(this).children('.children').slideUp();
            }
        }
    );
    
    
    // check browser version
    if ((BrowserDetect.browser == 'Explorer') && (BrowserDetect.version == '6'))
    {
        $j('#ie6_warning').show();
    }
    
    /* print detailed results */
    $j("#print_results").live('click', function () {
        
        content_to_print = $j('#print_this').html();
        newwin=window.open('','printwin','left=100,top=100,width=400,height=400');
        newwin.document.write('<HTML>\n<HEAD>\n');
        newwin.document.write('<TITLE>Print Page</TITLE>\n');

        newwin.document.write('<script>\n');
        newwin.document.write('function print_win(){\n');
        newwin.document.write('window.print();\n');
        newwin.document.write('window.setTimeout("close()",1000)\n');
        newwin.document.write('}\n');
        newwin.document.write('<\/script>\n');
        
        newwin.document.write('<style>\n');
        newwin.document.write('#config td { line-height:24px; }');
        newwin.document.write('#data { width:600px;padding-top:40px; }');
        newwin.document.write('#data .header { border-bottom:solid 1px;font-weight:bold; }');
        newwin.document.write('#data .column { display:inline;float:left;width:120px;line-height:20px; }');
        newwin.document.write('#data .row { border-bottom:dotted 1px; }');
        newwin.document.write('<\/style>\n');
        
        newwin.document.write('</HEAD>\n');
        newwin.document.write('<BODY onload="print_win()">\n');
        newwin.document.write(content_to_print);
        newwin.document.write('</BODY>\n');
        newwin.document.write('</HTML>\n');
        newwin.document.close();
        
    });
    
    // changed mortgage amount
    $j("#mortgage").change(function () {
        // google event tracker
        _gaq.push(['_trackEvent', 'Calculator', 'Mortgage', 'Changed mortgage amount']);
    });
    // changed mortgage term
    $j("#period_length").change(function () {
        // google event tracker
        _gaq.push(['_trackEvent', 'Calculator', 'Mortgage Term', 'Changed mortgage term']);
    });
    // changed payment frequency
    $j("#frequency").change(function () {
        // google event tracker
        _gaq.push(['_trackEvent', 'Calculator', 'Payment Frequency', 'Changed payment frequency']);
    });
    
    /* reset calculator */
    $j("#reset").click(function () {
    
        // google event tracker
        _gaq.push(['_trackEvent', 'Calculator', 'Calculator Reset', 'Reset button pressed']);
    
        $j('#mortgage').val('');
        $j('#period_length').val(60);
        $j('#frequency').val('monthly');
        
        // clear info
        $j('#info').html('');
        // remove classes
        $j('#info').removeClass();
        
        $j('#ratewrapper').children().each( function () {
            var currRow = $j(this).attr('id');
            $j(this).show('fast');
        }); // end each
        
        $j('#mortgage').focus();
        
        // hide view detailed results link
        $j('#detailed_results_link').hide();
        
        // hide and clear results
        $j('#result_wrapper').hide();
        $j('#result_wrapper').html();
        
        // clear detailed results
        $j('#data').html('');
        
    });
    
    // chart calculation
    $j("#calculate").click(function () {
    
        // google event tracker
        _gaq.push(['_trackEvent', 'Calculator', 'Calculate', 'Calculate button pressed']);
    
        // get the parameters entered by user
        var mortgage = $j('#mortgage').val();
        var period = $j('#period_length').val();
        var frequency = $j('#frequency').val();

        // clear info
        $j('#info').html('');
        // remove classes
        $j('#info').removeClass();
        
        // show wait icon
        $j('#info').addClass("wait");
        
        // validate entered mortgage
        if (mortgage == '') {
            $j('#info').addClass('failure');
            $j('#info').html('Please enter a value for your mortgage.');
            $j('#mortgage').focus();
            // remove wait
            $j('#info').removeClass('wait');
        } else if (period == "") {
            $j('#info').addClass('failure');
            $j('#info').html('Please select a mortgage term.');
            $j('#period_length').focus();
            // remove wait
            $j('#info').removeClass('wait');
        } else {

            // validate value
            var numberRE = /^\d+(\.\d+)?$/;
            if (numberRE.test(mortgage) == false) {
                $j('#info').addClass('failure');
                $j('#info').html('Please enter a valid number for you mortgage.');
                $j('#mortgage').val('');
                $j('#mortgage').focus();
                // remove wait
                $j('#info').removeClass('wait');
            } else {
                // passed validation, recalulate chart
                
                // reset results
                $j('#result_wrapper').hide();
                $j('#result_wrapper').html();
                $j('#data').html('');
                
                // get rates
                var arrRates = new Array();
                $j('#'+period + ' ul').children().each(function (index) {
                    arrRates[index] = $j(this).text();
                });
                

                var alterna_rate = parseFloat(arrRates[1])/100;
                alterna_rate = alterna_rate.toFixed(4);

                var rbc_rate = parseFloat(arrRates[2])/100;
                rbc_rate = rbc_rate.toFixed(4);

                var td_rate = parseFloat(arrRates[3])/100;
                td_rate = td_rate.toFixed(4);
                
                var bmo_rate = parseFloat(arrRates[4])/100;
                bmo_rate = bmo_rate.toFixed(4);

                var cibc_rate = parseFloat(arrRates[5])/100;
                cibc_rate = cibc_rate.toFixed(4);

                var scotia_rate = parseFloat(arrRates[6])/100;
                scotia_rate = scotia_rate.toFixed(4);

                var hsbc_rate = parseFloat(arrRates[7])/100;
                hsbc_rate = hsbc_rate.toFixed(4);
                
                // set needed variables according to user criteria
                // number of payments per year depending on the payment frequency
                var yearly_payments = 0;
                switch (frequency) {
                    case 'Monthly':
                        yearly_payments = 12;
                        break;
                    case 'Semi_Monthly':
                        yearly_payments = 24;
                        break;
                    case 'Bi_Weekly':
                        yearly_payments = 26;
                        break;
                    case 'Weekly':
                        yearly_payments = 52;
                        break;
                    default:
                        yearly_payments = 12;
                } // end switch
                
                // total number of payments
                //var total_payments = (period/12)*yearly_payments;
                var total_amortization_payments = 25 * yearly_payments; // default to 25 years
                var total_period_payments = (period/12) * yearly_payments;
                
                // hide rate table and display only selected period length rates
                $j('#ratewrapper').children().each( function () {
                    var currRow = $j(this).attr('id');
                    $j(this).hide('fast');
                }); // end each
                // show rates
                $j('#'+period).show('fast');
                
                
                // *********************************************************************************
                // ALTERNA VARIABLES
                // *********************************************************************************
                // calculate periodic interest rate
                var temp = 1 + (alterna_rate/2);
                var temp2 = 1/yearly_payments;
                temp = Math.pow(temp,2);
                temp = Math.pow(temp,temp2);
                var alterna_periodic_interest_rate = (temp - 1);
                alterna_periodic_interest_rate = parseFloat(alterna_periodic_interest_rate);

                
                // calculate effective annual rate
                var temp3 = alterna_periodic_interest_rate + 1;
                var alterna_effective_annual_rate = Math.pow(temp3,12) - 1;
                alterna_effective_annual_rate = parseFloat(alterna_effective_annual_rate);
                
                // calculate periodic payment
                var temp4 = parseFloat(mortgage * alterna_periodic_interest_rate);
                var temp5 = 1 + alterna_periodic_interest_rate;
                var temp6 = Math.pow(temp5,-total_amortization_payments);
                var alterna_periodic_payment = temp4 / (1 - temp6);
                alterna_periodic_payment = parseFloat(alterna_periodic_payment);
                
                // *********************************************************************************
                // RBC VARIABLES
                // *********************************************************************************
                // calculate periodic interest rate
                var temp = 1 + (rbc_rate/2);
                var temp2 = 1/yearly_payments;
                temp = Math.pow(temp,2);
                temp = Math.pow(temp,temp2);
                var rbc_periodic_interest_rate = (temp - 1);
                
                rbc_periodic_interest_rate = parseFloat(rbc_periodic_interest_rate);
                
                // calculate effective annual rate
                var temp3 = rbc_periodic_interest_rate + 1;
                var rbc_effective_annual_rate = Math.pow(temp3,12) - 1;
                rbc_effective_annual_rate = parseFloat(rbc_effective_annual_rate);
                
                // calculate periodic payment
                var temp4 = parseFloat(mortgage * rbc_periodic_interest_rate);
                var temp5 = 1 + rbc_periodic_interest_rate;
                var temp6 = Math.pow(temp5,-total_amortization_payments);
                var rbc_periodic_payment = temp4 / (1 - temp6);
                rbc_periodic_payment = parseFloat(rbc_periodic_payment);
                
                // *********************************************************************************
                // TD VARIABLES
                // *********************************************************************************
                // calculate periodic interest rate
                var temp = 1 + (td_rate/2);
                var temp2 = 1/yearly_payments;
                temp = Math.pow(temp,2);
                temp = Math.pow(temp,temp2);
                var td_periodic_interest_rate = (temp - 1);
                
                td_periodic_interest_rate = parseFloat(td_periodic_interest_rate);
                
                // calculate effective annual rate
                var temp3 = td_periodic_interest_rate + 1;
                var td_effective_annual_rate = Math.pow(temp3,12) - 1;
                td_effective_annual_rate = parseFloat(td_effective_annual_rate);
                
                // calculate periodic payment
                var temp4 = parseFloat(mortgage * td_periodic_interest_rate);
                var temp5 = 1 + td_periodic_interest_rate;
                var temp6 = Math.pow(temp5,-total_amortization_payments);
                var td_periodic_payment = temp4 / (1 - temp6);
                td_periodic_payment = parseFloat(td_periodic_payment);
                
                // *********************************************************************************
                // BMO VARIABLES
                // *********************************************************************************
                // calculate periodic interest rate
                var temp = 1 + (bmo_rate/2);
                var temp2 = 1/yearly_payments;
                temp = Math.pow(temp,2);
                temp = Math.pow(temp,temp2);
                var bmo_periodic_interest_rate = (temp - 1);
                
                bmo_periodic_interest_rate = parseFloat(bmo_periodic_interest_rate);
                
                // calculate effective annual rate
                var temp3 = bmo_periodic_interest_rate + 1;
                var bmo_effective_annual_rate = Math.pow(temp3,12) - 1;
                bmo_effective_annual_rate = parseFloat(bmo_effective_annual_rate);
                
                // calculate periodic payment
                var temp4 = parseFloat(mortgage * bmo_periodic_interest_rate);
                var temp5 = 1 + bmo_periodic_interest_rate;
                var temp6 = Math.pow(temp5,-total_amortization_payments);
                var bmo_periodic_payment = temp4 / (1 - temp6);
                bmo_periodic_payment = parseFloat(bmo_periodic_payment);
                
                // *********************************************************************************
                // CIBC VARIABLES
                // *********************************************************************************
                // calculate periodic interest rate
                var temp = 1 + (cibc_rate/2);
                var temp2 = 1/yearly_payments;
                temp = Math.pow(temp,2);
                temp = Math.pow(temp,temp2);
                var cibc_periodic_interest_rate = (temp - 1);
                
                cibc_periodic_interest_rate = parseFloat(cibc_periodic_interest_rate);
                
                // calculate effective annual rate
                var temp3 = cibc_periodic_interest_rate + 1;
                var cibc_effective_annual_rate = Math.pow(temp3,12) - 1;
                cibc_effective_annual_rate = parseFloat(cibc_effective_annual_rate);
                
                // calculate periodic payment
                var temp4 = parseFloat(mortgage * cibc_periodic_interest_rate);
                var temp5 = 1 + cibc_periodic_interest_rate;
                var temp6 = Math.pow(temp5,-total_amortization_payments);
                var cibc_periodic_payment = temp4 / (1 - temp6);
                cibc_periodic_payment = parseFloat(cibc_periodic_payment);
                
                // *********************************************************************************
                // SCOTIA VARIABLES
                // *********************************************************************************
                // calculate periodic interest rate
                var temp = 1 + (scotia_rate/2);
                var temp2 = 1/yearly_payments;
                temp = Math.pow(temp,2);
                temp = Math.pow(temp,temp2);
                var scotia_periodic_interest_rate = (temp - 1);
                
                scotia_periodic_interest_rate = parseFloat(scotia_periodic_interest_rate);
                
                // calculate effective annual rate
                var temp3 = scotia_periodic_interest_rate + 1;
                var scotia_effective_annual_rate = Math.pow(temp3,12) - 1;
                scotia_effective_annual_rate = parseFloat(scotia_effective_annual_rate);
                
                // calculate periodic payment
                var temp4 = parseFloat(mortgage * scotia_periodic_interest_rate);
                var temp5 = 1 + scotia_periodic_interest_rate;
                var temp6 = Math.pow(temp5,-total_amortization_payments);
                var scotia_periodic_payment = temp4 / (1 - temp6);
                scotia_periodic_payment = parseFloat(scotia_periodic_payment);
                
                // *********************************************************************************
                // HSBC VARIABLES
                // *********************************************************************************
                // calculate periodic interest rate
                var temp = 1 + (hsbc_rate/2);
                var temp2 = 1/yearly_payments;
                temp = Math.pow(temp,2);
                temp = Math.pow(temp,temp2);
                var hsbc_periodic_interest_rate = (temp - 1);
                
                hsbc_periodic_interest_rate = parseFloat(hsbc_periodic_interest_rate);
                
                // calculate effective annual rate
                var temp3 = hsbc_periodic_interest_rate + 1;
                var hsbc_effective_annual_rate = Math.pow(temp3,12) - 1;
                hsbc_effective_annual_rate = parseFloat(hsbc_effective_annual_rate);
                
                // calculate periodic payment
                var temp4 = parseFloat(mortgage * hsbc_periodic_interest_rate);
                var temp5 = 1 + hsbc_periodic_interest_rate;
                var temp6 = Math.pow(temp5,-total_amortization_payments);
                var hsbc_periodic_payment = temp4 / (1 - temp6);
                hsbc_periodic_payment = parseFloat(hsbc_periodic_payment);
                

                // *******************************************************************
                // populate detailed results chart
                
                // needed variables
                var alterna_balance = parseFloat(mortgage);
                var rbc_balance = parseFloat(mortgage);
                var td_balance = parseFloat(mortgage);
                var bmo_balance = parseFloat(mortgage);
                var cibc_balance = parseFloat(mortgage);
                var scotia_balance = parseFloat(mortgage);
                var hsbc_balance = parseFloat(mortgage);
                
                var today = new Date();
                var theyear = today.getFullYear();
                var themonth = today.getMonth();
                if (themonth == 11) {
                    theyear = theyear + 1;
                    themonth = 0;
                } else {
                    themonth = themonth + 1;
                }
                var thedate = new Date(theyear,themonth,1);
                // variables for total interest paid
                var alterna_total_interest = 0;
                var rbc_total_interest = 0;
                var td_total_interest = 0;
                var bmo_total_interest = 0;
                var cibc_total_interest = 0;
                var scotia_total_interest = 0;
                var hsbc_total_interest = 0;
                // end needed variables
                
                // months
                var arrMonths = new Array();
                arrMonths[0] = 'Jan';
                arrMonths[1] = 'Feb';
                arrMonths[2] = 'Mar';
                arrMonths[3] = 'Apr';
                arrMonths[4] = 'May';
                arrMonths[5] = 'Jun';
                arrMonths[6] = 'Jul';
                arrMonths[7] = 'Aug';
                arrMonths[8] = 'Sep';
                arrMonths[9] = 'Oct';
                arrMonths[10] = 'Nov';
                arrMonths[11] = 'Dev';
                
                $j('#data_principal').html(formatCurrency(mortgage));
                $j('#data_rate').html(arrRates[1] + '%');
                $j('#data_date').html(thedate.toLocaleDateString());
                $j('#data_months').html(period + ' months');
                $j('#data_payments').html(formatCurrency(alterna_periodic_payment));
                $j('#data_frequency').html(frequency.replace('_','-'));
                
                
                var header = '<div class="header">';
                header += '<div class="column">Date</div>';
                header += '<div class="column">Payment</div>';
                header += '<div class="column">Interest</div>';
                header += '<div class="column">Principal</div>';
                header += '<div class="column">Balance</div>';
                header += '<div style="clear:both;"></div>';
                header += '</div>';
                $j('#data').append(header);
                
                var firstRow = '<div class="row">';
                firstRow += '<div class="column">&nbsp;</div>';
                firstRow += '<div class="column">&nbsp;</div>';
                firstRow += '<div class="column">&nbsp;</div>';
                firstRow += '<div class="column">&nbsp;</div>';
                firstRow += '<div class="column">'+ formatCurrency(mortgage) +'</div>';
                firstRow += '<div style="clear:both;"></div>';
                firstRow += '</div>';
                $j('#data').append(firstRow);
                
                for (var x=0;x<total_period_payments;x++) {
                
                    // alterna
                    var alterna_interest = parseFloat(alterna_periodic_interest_rate * alterna_balance);
                    var alterna_principal = parseFloat(alterna_periodic_payment - alterna_interest);
                    alterna_balance = parseFloat(alterna_balance - alterna_principal);
                    alterna_total_interest = alterna_total_interest + alterna_interest;
                    
                    // rbc
                    var rbc_interest = parseFloat(rbc_periodic_interest_rate * rbc_balance);
                    var rbc_principal = parseFloat(rbc_periodic_payment - rbc_interest);
                    rbc_balance = parseFloat(rbc_balance - rbc_principal);
                    rbc_total_interest = rbc_total_interest + rbc_interest;
                    
                    // td
                    var td_interest = parseFloat(td_periodic_interest_rate * td_balance);
                    var td_principal = parseFloat(td_periodic_payment - td_interest);
                    td_balance = parseFloat(td_balance - td_principal);
                    td_total_interest = td_total_interest + td_interest;
                    
                    // bmo
                    var bmo_interest = parseFloat(bmo_periodic_interest_rate * bmo_balance);
                    var bmo_principal = parseFloat(bmo_periodic_payment - bmo_interest);
                    bmo_balance = parseFloat(bmo_balance - bmo_principal);
                    bmo_total_interest = bmo_total_interest + bmo_interest;
                    
                    // cibc
                    var cibc_interest = parseFloat(cibc_periodic_interest_rate * cibc_balance);
                    var cibc_principal = parseFloat(cibc_periodic_payment - cibc_interest);
                    cibc_balance = parseFloat(cibc_balance - cibc_principal);
                    cibc_total_interest = cibc_total_interest + cibc_interest;
                    
                    // scotia
                    var scotia_interest = parseFloat(scotia_periodic_interest_rate * scotia_balance);
                    var scotia_principal = parseFloat(scotia_periodic_payment - scotia_interest);
                    scotia_balance = parseFloat(scotia_balance - scotia_principal);
                    scotia_total_interest = scotia_total_interest + scotia_interest;
                    
                    // hsbc
                    var hsbc_interest = parseFloat(hsbc_periodic_interest_rate * hsbc_balance);
                    var hsbc_principal = parseFloat(hsbc_periodic_payment - hsbc_interest);
                    hsbc_balance = parseFloat(hsbc_balance - hsbc_principal);
                    hsbc_total_interest = hsbc_total_interest + hsbc_interest;

                    // build date string
                    curr_day = thedate.getDate();
                    curr_day = curr_day.toString();
                    if (curr_day.length < 2) {
                        curr_day = '0' + curr_day;
                    }
                    curr_month = arrMonths[thedate.getMonth()];
                    curr_year = thedate.getFullYear();
                    curr_date = curr_day + '-' + curr_month + '-' + curr_year;
                    
                    var row = '<div class="row">';
                    row += '<div class="column">'+ curr_date +'</div>';
                    row += '<div class="column">'+ formatCurrency(alterna_periodic_payment) +'</div>';
                    row += '<div class="column">'+ formatCurrency(alterna_interest) +'</div>';
                    row += '<div class="column">'+ formatCurrency(alterna_principal) +'</div>';
                    row += '<div class="column">'+ formatCurrency(alterna_balance) +'</div>';
                    row += '<div style="clear:both;"></div>';
                    row += '</div>';
                    
                
                    $j('#data').append(row);
                    
                    // calculate next payment date
                    switch (frequency) {
                        case 'Monthly':
                            thedate = new Date(thedate.setMonth(thedate.getMonth()+1));
                            break;
                        case 'Semi_Monthly':
                            if (thedate.getDate() == 1) {
                                thedate = new Date(thedate.getFullYear(),thedate.getMonth(),15);
                            } else {
                                if (thedate.getMonth() == 11) {
                                    theyear = thedate.getFullYear() + 1;
                                    themonth = 0;
                                } else {
                                    themonth = thedate.getMonth() + 1;
                                }
                                thedate = new Date(theyear,themonth,1);
                            }
                            break;
                        case 'Bi_Weekly':
                            thedate = new Date(thedate.setDate(thedate.getDate()+14));
                            break;
                        case 'Weekly':
                            thedate = new Date(thedate.setDate(thedate.getDate()+7));
                            break;
                        default:
                            break;
                    } // end switch
                }
                /* calculate savings */
                var rbc_savings = rbc_total_interest - alterna_total_interest;
                var td_savings = td_total_interest - alterna_total_interest;
                var bmo_savings = bmo_total_interest - alterna_total_interest;
                var cibc_savings = cibc_total_interest - alterna_total_interest;
                var scotia_savings = scotia_total_interest - alterna_total_interest;
                var hsbc_savings = hsbc_total_interest - alterna_total_interest;
                
                
                /* build results table */
                var resultsHTML = '<div id="resultswrapper">';
                    /* chart title */
                    resultsHTML += '<div id="resultscharttitle">Rate Comparison<span class="help"><img src="/wp-content/themes/AlternaV2/images/help_icon.png" border="0"></span><div class="tooltip">Total Interest Saved Formula:<br/>Competitor Interest - Alterna Interest</div></div>';

                    resultsHTML += '<div style="clear:both;"></div>';
                    /* results header */
                    resultsHTML += '<div id="resultsheader">';
                        resultsHTML += '<div class="resultscolumn bankname">&nbsp;</div>';
                        resultsHTML += '<div class="resultscolumn">'+ $j('#frequency option:selected').text() +' Payment</div>';
                        resultsHTML += '<div class="resultscolumn">Total Interest Paid</div>';
                        resultsHTML += '<div class="resultscolumn">Total Interest Saved</div>';
                        resultsHTML += '<div style="clear:both;"></div>';
                    resultsHTML += '</div>'; // close resultsheader
                    /* start results */
                    resultsHTML += '<div id="results">';
                        
                        /* Alterna */
                        resultsHTML += '<div id="bank">';
                            resultsHTML += '<div class="resultscolumn bankname savings">Alterna</div>';
                            resultsHTML += '<div class="resultscolumn savings">'+ formatCurrency(alterna_periodic_payment) +'</div>';
                            resultsHTML += '<div class="resultscolumn savings">'+ formatCurrency(alterna_total_interest) +'</div>';
                            resultsHTML += '<div class="resultscolumn savings">- -</div>';
                            resultsHTML += '<div style="clear:both;"></div>';
                        resultsHTML += '</div>';
                        
                        /* RBC */
                        resultsHTML += '<div id="bank">';
                            resultsHTML += '<div class="resultscolumn bankname">RBC</div>';
                            resultsHTML += '<div class="resultscolumn">'+ formatCurrency(rbc_periodic_payment) +'</div>';
                            resultsHTML += '<div class="resultscolumn">'+ formatCurrency(rbc_total_interest) +'</div>';
                            resultsHTML += '<div class="resultscolumn savings">'+ formatCurrency(rbc_savings) +'</div>';
                            resultsHTML += '<div style="clear:both;"></div>';
                        resultsHTML += '</div>';
                        
                        /* TD Canada Trust */
                        resultsHTML += '<div id="bank">';
                            resultsHTML += '<div class="resultscolumn bankname">TD Canada Trust</div>';
                            resultsHTML += '<div class="resultscolumn">'+ formatCurrency(td_periodic_payment) +'</div>';
                            resultsHTML += '<div class="resultscolumn">'+ formatCurrency(td_total_interest) +'</div>';
                            resultsHTML += '<div class="resultscolumn savings">'+ formatCurrency(td_savings) +'</div>';
                            resultsHTML += '<div style="clear:both;"></div>';
                        resultsHTML += '</div>';
                        
                        /* BMO */
                        resultsHTML += '<div id="bank">';
                            resultsHTML += '<div class="resultscolumn bankname">BMO</div>';
                            resultsHTML += '<div class="resultscolumn">'+ formatCurrency(bmo_periodic_payment) +'</div>';
                            resultsHTML += '<div class="resultscolumn">'+ formatCurrency(bmo_total_interest) +'</div>';
                            resultsHTML += '<div class="resultscolumn savings">'+ formatCurrency(bmo_savings) +'</div>';
                            resultsHTML += '<div style="clear:both;"></div>';
                        resultsHTML += '</div>';
                        
                        /* CIBC */
                        resultsHTML += '<div id="bank">';
                            resultsHTML += '<div class="resultscolumn bankname">CIBC</div>';
                            resultsHTML += '<div class="resultscolumn">'+ formatCurrency(cibc_periodic_payment) +'</div>';
                            resultsHTML += '<div class="resultscolumn">'+ formatCurrency(cibc_total_interest) +'</div>';
                            resultsHTML += '<div class="resultscolumn savings">'+ formatCurrency(cibc_savings) +'</div>';
                            resultsHTML += '<div style="clear:both;"></div>';
                        resultsHTML += '</div>';
                        
                        /* Scotiabank */
                        resultsHTML += '<div id="bank">';
                            resultsHTML += '<div class="resultscolumn bankname">Scotiabank</div>';
                            resultsHTML += '<div class="resultscolumn">'+ formatCurrency(scotia_periodic_payment) +'</div>';
                            resultsHTML += '<div class="resultscolumn">'+ formatCurrency(scotia_total_interest) +'</div>';
                            resultsHTML += '<div class="resultscolumn savings">'+ formatCurrency(scotia_savings) +'</div>';
                            resultsHTML += '<div style="clear:both;"></div>';
                        resultsHTML += '</div>';
                        
                        /* HSBC */
                        resultsHTML += '<div id="bank">';
                            resultsHTML += '<div class="resultscolumn bankname">HSBC</div>';
                            resultsHTML += '<div class="resultscolumn">'+ formatCurrency(hsbc_periodic_payment) +'</div>';
                            resultsHTML += '<div class="resultscolumn">'+ formatCurrency(hsbc_total_interest) +'</div>';
                            resultsHTML += '<div class="resultscolumn savings">'+ formatCurrency(hsbc_savings) +'</div>';
                            resultsHTML += '<div style="clear:both;"></div>';
                        resultsHTML += '</div>';

                    resultsHTML += '</div>'; // close results
                resultsHTML += '</div>'; // close results wrapper
                
                // show results
                $j('#result_wrapper').html(resultsHTML);
                
                // show view details results link
                $j('#detailed_results_link').show('slow');
                
                // show results
                $j('#result_wrapper').show('slow');
                
                // remove wait
                $j('#info').removeClass('wait');
            }
        }
    });
}); // end document ready

