﻿(function() {
    var _b = Base = {};
    var _loadedUrls = {};

    var scripts = document.getElementsByTagName("script");
    var i = scripts.length;
    while (i--) {
        var match = scripts[i].src.match(/(^|.*\/)base\.js$/);
        if (match) { _b.ROOT = match[1]; }
    }

    _b.xhr = function(method, url, someBool) {
        var request = new XMLHttpRequest();
        request.open(method, url, someBool);
        return request;
    }

    _b.require = function(url) {
        if (!url.match(/\.([^\/]*)$/)) { url += ".js"; }
        if (!_loadedUrls[url]) {
            with (_b.xhr("GET", _b.ROOT + url, false)) {
                send(null);
                if (status == 200) {
                    eval(responseText);
                    _loadedUrls[url] = true;
                }
                else { throw new Error("Unable to load " + url + " status: " + status); }
            }
        }
    }
})();

// do the initial script loading... these run everything else
Base.require("jquery-1.3.2.min.js");
Base.require("jquery-ui-1.7.2.custom.min.js");
Base.require("swfobject.js");
Base.require("application.js");