

/*****************************
/* algemene functies
/****************************/

jQuery.fn.rollahover = function() 
	{   
		$(this).each(function(i){
			var oimg = $($(this).html());
			var h=oimg.height()/2;
			var w=oimg.width();
			var alt=oimg.attr("alt");
			var src=oimg.attr("src");
			$(this).height(h);
			$(this).width(w);
			$(this).css("background-image","url("+src+")");
			$(this).css("overflow-x","hidden");
			$(this).css("display","block");
			$(this).css("text-indent","-999em");
			$(this).html(alt);
			$(this).attr("title",alt);
			$(this).hover(function(){
				$(this).css("background-position","left bottom");
			},function(){
				$(this).css("background-position","left top");
			})
			return this;     
		});
		return this;
	} 
	
function processZoomImages(path){

	$("a[class^=zoomImage]").each(
		function(i){
			var obj=$(this);
			var thumbsizeArr,thumbwidth,thumbheight,urlParts,server,relpath,query			
			if(obj.attr("rel").indexOf("x")>1){
				thumbsize = obj.attr("rel");
				thumbsizeArr = thumbsize.split("x");
			}else{
				thumbsize = obj.attr("class").split("_")[1];
				thumbsizeArr = thumbsize.split("x");
			}
			var thumbwidth = thumbsizeArr[0];
			var thumbheight = thumbsizeArr[1];
			var urlParts = /^(https?:\/\/.+?)?(\/.+?)(\?.*?)?$/.exec(obj.attr("href")); 
			var server = urlParts[1]; // maybe be '' depending on the browser 
			var relpath = urlParts[2]; 
			var query = urlParts[3]; 
			$.ajax({
				  url: path,
				  data : {
				  	  file : relpath,
					  width : thumbwidth,
					  height : thumbheight
				  },
				  success: function(data) {
					obj.html("<img src='"  + data.thumb + "' alt='' />");
				  },
				  dataType:"json"
			});
			obj.fancybox({
				'transitionIn'	:	'elastic',
				'transitionOut'	:	'elastic',
				'speedIn'		:	200, 
				'speedOut'		:	200, 
				'overlayShow'	:	false
			});
		}
	)
}

function processResizeImages(path){

	$("a[class^=resizeImage]").each(
		function(i){
			var obj=$(this);
			var thumbsizeArr,thumbwidth,thumbheight,urlParts,server,relpath,query			
			if(obj.attr("rel").indexOf("x")>1){
				thumbsize = obj.attr("rel");
				thumbsizeArr = thumbsize.split("x");
			}else{
				thumbsize = obj.attr("class").split("_")[1];
				thumbsizeArr = thumbsize.split("x");
			}
			var thumbwidth = thumbsizeArr[0];
			var thumbheight = thumbsizeArr[1];
			var urlParts = /^(https?:\/\/.+?)?(\/.+?)(\?.*?)?$/.exec(obj.attr("href")); 
			var server = urlParts[1]; // maybe be '' depending on the browser 
			var relpath = urlParts[2]; 
			var query = urlParts[3]; 
			$.ajax({
				  url: path,
				  data : {
				  	  file : relpath,
					  width : thumbwidth,
					  height : thumbheight
				  },
				  success: function(data) {
					obj.parent().html("<img src='"  + data.thumb + "' alt='' />");
				  },
				  dataType:"json"
			});
		}
	)
}


function processResizeBgImages(path){

	$("[class^=resizeBgImage]").each(
		function(i){
			var obj=$(this);
			var thumbsizeArr,thumbwidth,thumbheight,urlParts,server,relpath,query			
			thumbsize = obj.attr("class").split(" ")[0].split("_")[1];
			thumbsizeArr = thumbsize.split("x");
			var thumbwidth = thumbsizeArr[0];
			var thumbheight = thumbsizeArr[1];
			var urlParts = /^(https?:\/\/.+?)?(\/.+?)(\?.*?)?$/.exec(obj.attr("rel")); 
			var server = urlParts[1]; // maybe be '' depending on the browser 
			var relpath = urlParts[2]; 
			var query = urlParts[3]; 
			$.ajax({
				  url: path,
				  data : {
				  	  file : relpath,
					  width : thumbwidth,
					  height : thumbheight
				  },
				  success: function(data) {
					obj.css("background-image","url("+data.thumb+")");
					obj.removeAttr("rel");
				  },
				  dataType:"json"
			});
		}
	)
}

/*****************************
/* algemene functies
/****************************/
function createPopupWindow(html,name,width,height) {
	var n=open
	( 
	html, name, 
	'width='+width+',height='+height
	+',left='+(screen.width -width )/2
	+',top=' +(screen.height-height)/2
	+',status=0,menubar=0,toolbar=0,scrollbars=0,resizable=1'
	);
	n.focus();
}
function parseEmail(){
	$(".email").map(function(){
		$(this).html($(this).html().replace("[a]","@"));
		$(this).html($(this).html().replace("[p]","."));
		$(this).html("<a href=\"mail"+"to:" + $(this).html() + "\">" + $(this).html() + "</a>");	
		$(this).removeClass("email");
	});
}

/*****************************
/* SWFADDRESS
/****************************/

function handleChange(event) {

	switch(SWFAddress.getPathNames()[0]){
		case "home":
			break;
		case "portfolio":
			if(SWFAddress.getPathNames()[1]!=undefined){
				$.ajax({
					  url: listItem2Url,
					  data : {
					  	  klant : SWFAddress.getPathNames()[1],
						  websiteId : websiteId,
						  menuId : menuId						  
					  },
					  success: function(data) {
						$("#work").html(data);
						processResizeBgImages(zoomImageCreator);
						$("#project-gallery").cycle({
						    timeout: 0, 
    						speed:   300, 
							fx: 'scrollHorz',
    						startingSlide: 0
						});
					  },
					  dataType:"html"
				});						
			}else{
				$.ajax({
					  url: listItemUrl,
					  data : {
					  	  portfolioClass : SWFAddress.getParameter("class"),
						  websiteId : websiteId,
						  menuId : menuId
					  },
					  success: function(data) {
						$("#work").html(data);
						processResizeBgImages(zoomImageCreator);
					  },
					  dataType:"html"
				});				
			}
			break;
		default:

		
	}

}

$(function(){
	SWFAddress.addEventListener(SWFAddressEvent.CHANGE, handleChange);
	
	$(".rollover").rollahover();	
	parseEmail();
});
$(window).load(function(){
	
});		

