if(!window.console) {
	window.console = new function() {
		this.log = function(str) {};
		this.dir = function(str) {};
	};
}

var UKTV = {
	'NS': 'UKTV'
};

UKTV.loader = new function() {
	this.NS = 'UKTV.loader';
	var registeredObjs = new Array();
	var htmlBody = false;
	
	var initBody = function() {
		YAHOO.util.Dom.addClass(this, 'js');
		YAHOO.util.Dom.removeClass(this, 'nojs');
		
		if(YAHOO.env.ua.opera) {
			YAHOO.util.Dom.addClass(this, 'opera');			
		}

		if(YAHOO.env.ua.webkit) {
			YAHOO.util.Dom.addClass(this, 'safari');
		}
		
		if(navigator.appVersion.indexOf("Mac") > -1) {
			YAHOO.util.Dom.addClass(this, 'mac');			
		}
		
		if(YAHOO.env.ua.gecko) {
			YAHOO.util.Dom.addClass(this, 'firefox');
		}

		if(YAHOO.env.ua.gecko > 1.8) {
			YAHOO.util.Dom.addClass(this, 'ff3');			
		}
	};
	
	var loadStyleSheet = function(url) {
		if(url) {
			var strCSS = '<link rel="stylesheet" type="text/css" href="'+url+'" />';
			document.write(strCSS);
		}
	};
	
	this.loadStyleSheet = loadStyleSheet;
	
	var init = function() {
		var i = registeredObjs.length;
		
		while(i--) {
			registeredObjs[i].init.call();
		}
	};
	
	this.registerObj = function(obj) {
		registeredObjs[registeredObjs.length] = obj;
	};
	
	YAHOO.util.Event.onAvailable('html-body', initBody, this);
	YAHOO.util.Event.onDOMReady(init);	
};

Array.prototype.contains = function (value) {
	var i;
	for (i=0; i < this.length; i++) {
		if (this[i] === value) {
			return true;
		}
	}
	return false;
};