var NBAUtil = {
	
	Events : (function() { 
		
		var dom_loaded_handlers = [];
		
		return {

			addDomLoadedHandler : function(func) {

				dom_loaded_handlers.push(func);

			},

			attachDomLoadedHandlers : function() {

				dom_loaded_handlers.each(function(n) {
					n();
				});
			}
		};
	})(),
	
	URL : {
	
		getQueryStringParam : (function() {
		
			var query_string = (window.location.search.length > 1) ? window.location.search.substring(1) : null;
			var key_value_pairs = (query_string != null) ? query_string.split("&") : [];
			var params = { };
			
			for (var i=0; i < key_value_pairs.length; i++) {
				var key_value_pair = key_value_pairs[i].split("=");
				
				params[key_value_pair[0]] = key_value_pair[1] != null ? key_value_pair[1] : null;
			}
			
		
			return function(name) {
				return params[name] != null ? decodeURIComponent(params[name]) : null;
			}
		})(),
		
		hash : (window.location.hash.length > 1) ? window.location.hash.substring(1) : null,
		script_name : (function() { var p = window.location.href.split("?")[0]; var a = p.split("/"); if (a.length < 4) { return "index.html"; } else { return a[a.length-1].indexOf(".") > -1 ? a[a.length-1] : "index.html"; }})()

	},
	
	Utilities : { 
		
		getTeamCodeFromURL : function() {
			return (window.location.pathname.split("/"))[1];
		},
		
		getDleagueTeamCodeFromURL : function() {
			return (window.location.pathname.split("/"))[2];
		}
	}
}

document.observe("dom:loaded", NBAUtil.Events.attachDomLoadedHandlers);

/*
 * prototype fix for firefox caching bug - 20091014 - NOrtenzio
 */

Event.observe(window, 'unload', function(){});