/*
 * public
 */
var path = "/wp-content/themes/it-tirol/images/";


/*
 * private
 */
var colorRegistry = new Array();
	
/*
 * private
 */
function mouseout(i,el){
	setTimeout(function(){
		$(el).animate({color:colorRegistry[i]}, { queue:false, duration:180 });
	},150);
}

/*
 * Methods:
 *    + enqueueScript(string||array <scriptToExecute>)
 *	  + appendScript(string || array <scriptToExecute>)
 *    + run()
 */
var bootloader = function(){
	
	/*
	 * private
	 */
	this.scriptQueue = new Array();
	
	/*
	 * private
	 */
	this.scriptRegistry = new Object();
	
	/*
	 * public
	 */
	this.enqueueScript = function(scriptToExecute){
		if(typeof scriptToExecute == "string"){
			this.appendScript(scriptToExecute);
		}else{
			for(var scriptIndex = 0; scriptIndex < scriptToExecute.length; scriptIndex++){
				this.appendScript(scriptToExecute[scriptIndex]);
			}
		}
	}
	
	/*
	 * public
	 */
	this.appendScript = function(scriptToExecute){
		if(typeof scriptToExecute == "string" || typeof scriptToExecute == "function"){
			this.scriptQueue.push(scriptToExecute);
		}else{
			this.enqueueScript(scriptToExecute);
		}
	}
	
	/*
	 * public
	 */
	this.run = function(){
		for(var scriptIndex = 0; scriptIndex < this.scriptQueue.length; scriptIndex++){
			if(typeof this.scriptQueue[scriptIndex] == "string"){
				var scriptCommand = 'this.scriptRegistry.'+this.scriptQueue[scriptIndex]+'();';
				eval(scriptCommand);
			}else{
				this.scriptQueue[scriptIndex]();
			}
		}
	}
	
	/*
	 * private
	 */
	this.scriptRegistry.linkDecoration = function(){
		$("a").each(function(i){
			if($(this).hasClass("more-link")){return;}

			if(!colorRegistry[i]){
				colorRegistry[i] = $(this).css("color");
			}
			$(this).mouseover(function(){
				$(this).animate({color:'#000'}, {queue:false, duration:200});
			});
			$(this).mouseout(function(){
				mouseout(i,this);
			});
		});
	}
	
	/*
	 * private
	 */
	this.scriptRegistry.imageHover = function(){
		$(".list img").each(function(i,e){
			$(e)
				.wrap('<span class="imageContainer"></span>')
				.parent()
				.append('<span class="goTo">&raquo; zum Eintrag</span>');
	
			var link = 
				$(e)
					.parent()
					.parent()
					.parent()
					.find("h1 a")
					.attr("href");

			$(e).parent().click(function(){
				window.location = link;
			});
	
			$(e)
				.parent()
				.find("span.goTo")
				.animate({top:-40,opacity:0.3},{duration:1});
				
			$(e)
				.parent()
				.mouseenter(function(){
					$(this).find("span.goTo")
						.animate({top:0},{duration:200})
						.animate({opacity:0.7},{duration:100});
				});
			$(e)
				.parent()
				.mouseout(function(){
					$(this).find("span.goTo").animate({top:-40,opacity:0.3},{duration:200});
				});
		});
	}
	
	/*
	 * private
	 */
	this.scriptRegistry.personLink = function(){
		$("#personContainer, #signatureContainer, #signature").click(function(){
			window.location = "/ueber-mich";
		});
	}
	
	/*
	 * private
	 */
	this.scriptRegistry.lightbox = function(){
		$(".content img").each(function(i,e){
			var src = $(e).attr("src");
			
			src = src.split(".").reverse();
						
			src[1] = src[1] + "1";
			
			var newSrc = src.reverse().join(".");
			
			console.log(newSrc);
			
			if(e.parentNode.tagName.toLowerCase() != "a"){
				$(e).wrap('<a href="'+e.src+'" class="lightbox"></a>');
			}
		});
		$("a.lightbox").lightBox({
			imageLoading: 	path + 'ajax-loader.gif',
			imageBtnClose:	path + 'lightbox-btn-close.gif',
			imageBtnPrev: 	path + 'lightbox-btn-prev.gif',
			imageBtnNext:	path + 'lightbox-btn-next.gif'
		});
	}
}


