﻿/*
    MoneyExpert-DailyFinance page components, Copyright (c) Money Expert Ltd. 2009
*/

// This is the only globally accessible variable defined in this file.
//var MoneyExpert_DailyFinance_Page_Components;

// Wrap everything else in a closure so we don't pollute the global object.
var MoneyExpert_DailyFinance_Page_Components = (function() {

    // Grab the query string parameters used to load this script...
    // Thanks to http://feather.elektrum.org/book/src.html
    var scripts = document.getElementsByTagName('script');
    var myScript = scripts[scripts.length - 1];
    var queryString = myScript.src.replace(/^[^\?]+\??/, '');
    function parseQuery(query) {
        var Params = new Object();
        if (!query) return Params; // return empty object
        var Pairs = query.split(/[;&]/);
        for (var i = 0; i < Pairs.length; i++) {
            var KeyVal = Pairs[i].split('=');
            if (!KeyVal || KeyVal.length != 2) continue;
            var key = unescape(KeyVal[0]);
            var val = unescape(KeyVal[1]);
            val = val.replace(/\+/g, ' ');
            Params[key] = val;
        }
        return Params;
    }
    var params = parseQuery(queryString);

    var rootUrl;

    var protocol = window.location.protocol;

    // Grab the specified client...
    if (params.partner) {
        switch (params.partner) {
            case "moneyexpert": rootUrl = "/"; break;
            default:
                switch (protocol) {
                    case "https": rootUrl = "https://www.moneyexpert.com/"; break;
                    default: rootUrl = "http://www.moneyexpert.com/"; break;
                }
        }
    } else {
        throw ("Client not specified!");
    }

    // Configuration section
    var config = {
        header: { url: rootUrl + "partners/dailyfinance/pagecomponents/dailyfinanceheader.aspx", width: 976, height: 256 },
        leftsidebar: { url: rootUrl + "partners/dailyfinance/pagecomponents/dailyfinanceleftsidebar.aspx", width: 168, height: 690 },
        rightsidebar: { url: rootUrl + "partners/dailyfinance/pagecomponents/dailyfinancerightsidebar.aspx", width: 300, height: 1253 },
        footer: { url: rootUrl + "partners/dailyfinance/pagecomponents/dailyfinancefooter.aspx", width: 976, height: 566 }
    };

    // The functions...
    return {

        Header: function() {
            document.writeln('<iframe width="' + config.header.width
            + '" height="' + config.header.height
            + '" src="' + config.header.url + '" scrolling="no" frameborder="0"></iframe>');
        },

        LeftSidebar: function() {
            document.writeln('<iframe width="' + config.leftsidebar.width
            + '" height="' + config.leftsidebar.height
            + '" src="' + config.leftsidebar.url + '" scrolling="no" frameborder="0"></iframe>');
        },

        RightSidebar: function() {
            document.writeln('<iframe width="' + config.rightsidebar.width
            + '" height="' + config.rightsidebar.height
            + '" src="' + config.rightsidebar.url + '" scrolling="no" frameborder="0"></iframe>');
        },

        Footer: function() {
            document.writeln('<iframe width="' + config.footer.width
            + '" height="' + config.footer.height
            + '" src="' + config.footer.url + '" scrolling="no" frameborder="0"></iframe>');
        }

    };

})();