// Set up our site URL
var siteURL = "http://public.bracketeers.com";

// Loads a javascript to the DOM head tag
function bracketeers_include_js(filename) {
    var html_doc = document.getElementsByTagName('body').item(0);
    var js = document.createElement('script');
    js.setAttribute('language', 'javascript');
    js.setAttribute('type', 'text/javascript');
    js.setAttribute('src', filename);
    html_doc.appendChild(js);
    return false;
}

function bracketeers_include_css(filename) {
    var html_doc = document.getElementsByTagName('head').item(0);
    var link = document.createElement('link');
    link.setAttribute('type', 'text/css');
	link.setAttribute('rel', 'stylesheet');
    link.setAttribute('href', filename);
    html_doc.appendChild(link);
    return false;
}

// Initialize included_files, if we haven't already
var included_files = window.included_files || new Array();

// Includes a file only once
function bracketeers_include_once(filename) {
    if (!bracketeers_in_array(filename, included_files)) {
        included_files[included_files.length] = filename;
		if(filename.match(/.js$/)) bracketeers_include_js(filename);
		else if(filename.match(/.css$/)) bracketeers_include_css(filename);
		else alert("Unrecognized file type in include_once:  "+filename);
    }
}

// Duplicate of PHP's in_array()
function bracketeers_in_array(needle, haystack) {
    for (var i = 0; i < haystack.length; i++) {
        if (haystack[i] == needle) {
            return true;
        }
    }
    return false;
}

function bracketeers_update(div, url) 
{
	var qs = siteURL+"/cgibin/ACD/ACD.js?uri=("+siteURL+"/"+url+")&callback=("+div+")";
	var id = div.match(/\d+$/);
	var l = document.getElementById('plugin_loading_'+id);
	if(l) l.style.display = "inline";
	bracketeers_include_js(qs);
	return false;
}

function bracketeers_initialize(){
	var i, id, div, js;
	var nl = document.getElementsByTagName('script');
	for(i=0;i<nl.length;i++) {
		if(nl[i].id.match("bracket_plugin_")) {
			id = nl[i].id.replace("bracket_plugin_","");
			div = document.createElement('div');
			div.setAttribute('id', 'bracket_plugin_'+id);
			div.setAttribute('class', "plugin_main");
			nl[i].parentNode.insertBefore(div,nl[i]);
			// Needed for IE7
			div.className = 'plugin_main';
			// Now get the data
			bracketeers_update(div.id, "view-bracket.php?p&id="+id);
		}
	}
}

// Bootstrap
bracketeers_include_once(siteURL+"/css/plugin.css");
window.onload = bracketeers_initialize;


