String.prototype.linkify = function() {
    return this.replace(/[A-Za-z]+:\/\/[A-Za-z0-9-_]+\.[A-Za-z0-9-_:%&\?\/.=]+/, function(m) {
        return m.link(m);
    });
};

$(document).ready(function()
{
	var url = "https://api.twitter.com/1/statuses/user_timeline.json?screen_name=prodacomisp&count=3&include_rts=true&callback=?";
	$.getJSON(url, 
	function(data){
		$.each(data, function(i, item) 
		{
			if(item.text !== undefined) 
			{
                var listclass = '';
            
                if(i%2)
                {
                	var listclass = '';
                }
            
                $("#twitterstream ul").append("<li class=\""+listclass+"\"><strong><a class=\"red\" href=\"http://www.twitter.com/prodacomisp\" title=\"volg prodacom op twitter\">prodacomisp</a>:</strong> "+item.text.linkify()+"<br /><br /></li>");
			}
		});
	});
	
	  $jScroller.add("#scroller_container","#scroller","left", 10, true);
	  $jScroller.start();
	  
	 $('.fade').each(function()
	{

		 $(this).click(function(e)
		{

			var x = e.pageX;
			var y = e.pageY;
			$('#scroller').children('a').each(function(){
				$(this).children('img:first').each(function()
				{
					var offsetLink = $(this).offset();
					var xLink = offsetLink.left;
					var yLink = offsetLink.top;
					
					var heightLink = $(this).height() + offsetLink.top;
					var widthLink = $(this).width() + offsetLink.left;
					
					//check of de A tag intersect met de cursor
					//binnen de breedte
					//alert( x + ">" + xLink); //391.5 > 445.5
					//alert( x + "<" + widthLink);//391.5<445.571
					//alert( y + ">" + yLink);//1372<1431
					//alert( y + "<" + heightLink);//1372>143116*/
					
					if(x > xLink && x < widthLink)
					{
						//ja nu de hoogte
						if(y > yLink && y < heightLink)
						{
							//klik
							window.location.href = $(this).parent().attr('href');
							
						}
					}
				});
			});
		});			
	});
	
	
	/* instellen portfolio klanten slider, als ie bestaat */
	var slider = $('div.slide');
	if(slider.length) {
		var selectedcustomer = $('div.slide span.referentieklant.selected');
		var selectedoffset = selectedcustomer.offset();
		if( selectedoffset.left > slider.width() && slider.width() > slider.parent('div.referentieklanten').width()) {
			slider.animate({'left': -(selectedcustomer.outerWidth())+"px"}, {'complete': updateSliderButtonsCb});
		}
		updateSliderButtons(slider);
	}
	
	/* portfolio klanten slider events */
	$('div.rightbutton').click(function(){
		var slider = $(this).siblings('div.slide'); 
		slider.animate({'left': "-=140px"}, {'complete': updateSliderButtonsCb});
	});
	$('div.leftbutton').click(function(){
		var slider = $(this).siblings('div.slide'); 
		slider.animate({'left': "+=140px"}, {'complete': updateSliderButtonsCb});
	});
	
	
	/* voor het selecteren van een andere afbeelding bij een referentie */
	$('div.afbeeldingen div.navigatie a.nummertje').click(function(){
		$(this).siblings('a').each(function(){$(this).removeClass('selected')});

		var target = $('div.afbeeldingen div.afbeelding img');
		var href = target.attr('src');
		href = href.substring(0, href.lastIndexOf('/')+1);
		href += $(this).attr('anderebestandsnaam');
		
		//TODO: show a load animation
		
		objImage = new Image();
		objImage.src = href;
		objImage.onload = function(){ target.attr('src', href); };
		
		$(this).addClass("selected");
	});
	
});

function updateSliderButtons(jSliderElem)
{
	if(jSliderElem.position().left < 0) {
		jSliderElem.siblings('div.leftbutton').css('display', 'block');
	}
	else {
		jSliderElem.siblings('div.leftbutton').css('display', 'none');
	}
	
	if(jSliderElem.position().left < (-(jSliderElem.width()) + jSliderElem.parent().width())) {
		jSliderElem.siblings('div.rightbutton').css('display', 'none');
	}
	else {
		jSliderElem.siblings('div.rightbutton').css('display', 'block');
	}
}

function updateSliderButtonsCb()
{
	updateSliderButtons($(this));	
}

