/*globals*/
//assetsUrl is set via PHP.
var mobiledetect;
var iphone;
var mobile;
var css3detect;
var css3;
var swod = '<img class="loader" src="'+assetsUrl+'/images/kp3/static/loading.gif" />';

/* replaces JSON loader; that was dumb and uncacheable (though kind of the point during dev)...*/
var globalscripts = new Array();
globalscripts.push(assetsUrl+"/scripts/kp3/core/jquery-mobile-ui.js");
globalscripts.push(assetsUrl+"/scripts/kp3/core/jquery-search.js");
globalscripts.push(assetsUrl+"/scripts/kp3/core/jquery-dynamic-elements.js");
globalscripts.push(assetsUrl+"/scripts/kp3/core/jquery-ga-events.js");
globalscripts.push(assetsUrl+"/scripts/kp3/core/jquery-kit-controller.js");
globalscripts.push(assetsUrl+"/scripts/kp3/core/jquery-collapsable-content.js");

$("head").ready(function(){
	for(var n=0; n<globalscripts.length; n++){
		var script = document.createElement('script');
		script.type='text/javascript';
		script.src = globalscripts[n];
		//document.head.appendChild(script);
		$("head").append(script);
	}
	//moving favicon to the template; requires a system republish to remove it from here.
	//just testing that it exists before I put this up:
	if($("head link[rel='shortcut icon']").length == 0){
		var favicon = '<link href="'+assetsUrl+'/images/kp3/static/favicon.ico" rel="shortcut icon" />';
		$("head").append(favicon);
	}	
	return;
});

/*
 * global functions
 */
function LoadTimer(){
	this.object;
	this.timeout;
	this.self;
	/*
	 * if needing to reference something created here somewhere else,
	 * use the format "m.mui"
	 */
	
	this.__construct = function(){
		var obj = this;
		eval('if(typeof('+obj.object+') != "undefined"){'+
			'obj.'+obj.self+' = new '+obj.object+'();'+
			'obj.'+obj.self+'.__construct();'+
		'}'+   
		'else{'+
			'var '+obj.timeout+';'+
			'if(typeof('+obj.object+') == "undefined"){'+
				obj.timeout+' = setTimeout(function(){obj.__construct();}, 10);'+
			'}'+
			'else{'+
				'clearTimeout('+obj.timeout+');'+
			'}'+
		'}');	
	};
}

$("#kit, #kiosk").ready(function(){
	if($("#kit, #kiosk").length > 0){
		var k = new LoadTimer();
		k.object = 'KitController';
		k.timeout = 'kit_timeout';
		k.self = 'kit';
		k.__construct();
	}	
});	
$("#top-search").ready(function(){
	if($("#top-search").length > 0){
		var s = new LoadTimer();
		s.object = 'Search';
		s.timeout = 'search_timeout';
		s.self = 'search';
		s.__construct();
	}	
});

//the touch event translator:
function mu_setTouchAnimation(){     
	var obj = this;
	
	//pick touch or click
	document.body.setAttribute('ontouchmove','return;');
	if(typeof document.body.ontouchmove == 'function'){
		obj.clickType = {
				start: 'touchstart',
				move: 'touchmove',
				end: 'touchend',
				x: 'event.changedTouches[0].clientX',
				y: 'event.changedTouches[0].clientY',
				hasMoved: false
		};
	}	
	else{
		obj.clickType = {
				start: 'mousedown',
				move: 'mousemove',
				end: 'mouseup',
				x: 'e.clientX',
				y: 'e.clientY',
				hasMoved: false
		};	
	}
	
	//on orientation change do these:
	window.onorientationchange = function(){
		obj.resizeSecondaryImg();
	};
}

