function transparentHeader() {
	$(window).scroll(function() {
		var nScrolled = $(window).scrollTop();
		var bTransparant = false;
		if(nScrolled > 136 && !bTransparant) {
			$('header').addClass('scrolled').fadeTo(0, 0.25, function() {
				bTransparant = true;
			});
			hoverHeader();
		} else {
			$('header').removeClass('scrolled').fadeTo(0, 1);
			bTransparant = false;
		}
	});
}

function setKerstboom() {
	var nWidth = $(window).width();
	var nSiteWidth = $('.swf').width();
	var nContainerSpace = Math.round((nWidth - nSiteWidth) / 2 - 658);
	var nContainerSpaceBottom = Math.round((nWidth - nSiteWidth) / 2 - 702);
	$('.kerstboom.right').css('right', nContainerSpace);
	$('.kerstboom.left').css('left', nContainerSpaceBottom);
}

Cufon.replace('.font', {
	hover: true,
	fontFamily: 'DINOT-Regular'
});
Cufon.replace('.medium', {
	hover: true,
	fontFamily: 'DINOT-Medium'
});
Cufon.replace('.bold', {
	hover: true,
	fontFamily: 'DINOT-Bold'
});

function setVideoHeight() {
	var nWidth = $(window).width();
	var nHeight = Math.round(nWidth / 2.98);
	$('.project-items, .project-item, .project-image, .video, .video object').css('height',nHeight);
	$('.video, .video object').css('width',nWidth);
}

var sGebruikersnaam;
function login() {
	$('#loginform input[type=submit]').click(doLogin);
	$('#sWachtwoord').keypress(function(e){
		if(e.which == 13) {
			doLogin();
		}
	});
	$('form:#loginform').submit(function(){
		if($('#loginform').attr('action') == '#') {
			return false;
		}
	});
}

function doLogin() {
	var sGebruikersnaam = $('#sGebruikersnaam').val();
	$.ajax({
		type: 'POST',
		url: sDomain+'requests/login.req.php',
		data: 'sGebruikersnaam='+sGebruikersnaam,
		success: function(p_sJson){
			var oJson = jQuery.parseJSON(p_sJson);
			if(oJson.login == 'true') {
				//$('#inlog_melding').html('');	
				$('#loginform').attr('action', oJson.response);
				$('#loginform').submit();
			} else {
				window.location = sDomain+'klantlogin?login=false';
			}
		}
	});
}

function showLoginError() {
	$('.login-error').slideDown(500);
}

function hoverPortfolio() {
	$('section#portfolio article').hover(function() {
		$(this).children('.overlay').stop().fadeTo(500, 0.8);
	}, function() {
		$(this).children('.overlay').stop().fadeTo(500, 1);
	});
}


function hoverHeader() {
	$('header.scrolled').hover(function() {
		var nScrolled = $(window).scrollTop();
		if(nScrolled > 136 ) {
			$('header').fadeTo(0, 1);
		}
	}, function() {
		var nScrolled = $(window).scrollTop();
		if(nScrolled > 136 ) {
			$('header').fadeTo(0, 0.25);
		}
	});	
}

var bResizeWindow = false;
function initLoginButton() {
	
	setNavPosition();
	
	if(bResizeWindow) {
		clearTimeout(resizeTimer);
		bResizeWindow = false;
	}
	
	var resizeTimer = null;
	$(window).resize(function() {  
		var bResizeWindow = true;

		if(!resizeTimer) {
			resizeTimer = setTimeout("initLoginButton();", 300);
			setNavPosition();
		}
	});	
}

function setNavPosition() {
	var nWindowWidth = $(window).width();
	if(nWindowWidth <= 1100 && nWindowWidth >= 850) {
		var nPosition = 1100 - nWindowWidth;
		$('#nav').css('right', nPosition);
	} 	
}

function twitter(p_sUsername,p_nCount,p_bAvatar){
	$.ajax({
		url: 'http://api.twitter.com/1/statuses/user_timeline/'+p_sUsername+'.json?include_rts=true&include_entities=true&count='+p_nCount+'&callback=?',
		dataType: 'json',
		success: function(result){
			var sHtml = '';
			$.each(result, function(i,oTweet){
				
				var sTweet = '';
				
				sTweet += '<div class="tweet">';
				if(p_bAvatar){
					sTweet += '<div class="image">';
					sTweet += '<a href="http://www.twitter.com/'+oTweet.user.screen_name+'" target="_blank">';
					sTweet += '<img src="'+oTweet.user.profile_image_url+'" alt="'+oTweet.user.name+'" />';
					sTweet += '</a>';
					sTweet += '</div>';
				}
				sTweet += '<p>'+formatTweet(oTweet.text);
				sTweet += '<br /><em>'+formatTime(oTweet.created_at)+'</em></p>';
				sTweet += '</div>';
				
				sHtml += sTweet;
			});
			$('#twitter').html(sHtml);
		}
	});
}

function initCycle() {
	$('.project-item').css('display', 'block');

	var bFirstSlide = true;
	$('.project-items').cycle({ 
	    speed: 900,
		requeueTimeout: 500,
		fx: 'scrollHorz',
		//easing: 'easeInQuint',
		easing: 'easeInExpo',
		timeout: 5000,
		prev: 'a.prev',
		next: 'a.next',
		width: '100%',
		requeueOnImageNotLoaded: true,
		fit: true,
		before: function(oCurrent, oNext, oOptions, bForward) {
			if(bFirstSlide == false) {
				if(bForward == true || bForward == 1) {
					$(oNext).css({
						'left': $(window).width()+'px'
					});
				} else {
					$(oNext).css({
						'left': '-'+$(window).width()+'px'
					});
				}
				
			} 
			bFirstSlide = false;
		}
	});	
	
	$(document).bind('keypress', function(e) {
		if(e.keyCode == 37) {
			$('.project-items').cycle('prev');
		} else if (e.keyCode == 39) {
			$('.project-items').cycle('next');
		}
    });
	
	$('#images-container').cycle({ 
	    speed: 700,
		fx: 'scrollHorz',
		easing: 'easeInQuint',
		timeout: 0,
		prev: 'a.prev',
		next: 'a.next',
		requeueOnImageNotLoaded: true
	});	
	
}

function hideCycleNav() {
	var nCycleItems = $('#images-container .image').size();
	
	if(nCycleItems <= 1) {
		$('#slider-nav').hide();
	}
}

function checkPageHeight(p_sId) {
	
	// slider: min-height: 250px; bij viewheight van 500px;
	var nMinHeight = 250;
	var nMinViewHeight = 500;
	var nViewHeight = $(window).height();
	var nMaxSliderHeight = 700;
	var nNewSliderHeight;
	
	if(nViewHeight > nMinViewHeight) {
		nNewSliderHeight = (nViewHeight - nMinViewHeight) + nMinHeight;
	}
	
	if(nNewSliderHeight >= nMaxSliderHeight) {
		nNewSliderHeight = nMaxSliderHeight;
	}
	
	var oObject;
	if(p_sId != undefined && p_sId != '') {
		if(p_sId == 'home') {
			oObject = '.project-items, .project-item, .project-image';
		} else {
			oObject = 'section#'+p_sId;
		}
	} 
	
	// effect uitvoeren
	$(oObject).stop().animate({
		height: nNewSliderHeight
	}, 500, 'easeOutBounce');
}

/*function hoverPortfolio() {
	$('a.overlay-item').hover(function() {
		$(this).prev('.overlay').animate({
			bottom: '0px'								 
		}, 200, 'easeInOutCirc');
	}, function() {
		$(this).prev('.overlay').animate({
			bottom: '-84px'								 
		}, 200, 'easeInOutCirc');
	});
}*/

var bNext = true;
var bPrev = true;
function itemsSlider(p_nVisible, p_nDefaultSlides) {
	var nVisible = p_nVisible; // Aantal zichtbare items
	var nDefaultSlides = p_nDefaultSlides; // Aantal items per keer sliden
	var obj = $('.logo'); // Naam van de items 
	var nSlides = nDefaultSlides;
	var nWidth = parseInt(obj.width()) + parseInt(obj.css('margin-right')) + parseInt(obj.css('margin-left'));
	var nTotal = parseInt($('#logo-container .logo').size());
	var nActive = nVisible;

	for(var i=0;i<obj.length;i++){
		if($(obj[i]).hasClass('active')){
			break;
		}	
	}
	if(i > (nVisible-1)){
		nActive = i+1;
		i = i-(nVisible-1);
		var nStart = (i*nWidth)*-1;
		$('#logo-container').css('left',nStart);
	}
	if(nTotal > nVisible){
		if(nActive == nTotal) {
			$('.slider-nav.next').hide();	
		}
	} else {
		$('.slider-nav.next').hide();
	}
	if(nActive > nVisible) {
		$('.slider-nav.prev').show();
	}
	
	$('.slider-nav.next').click(function(){
		if(bNext == true) {
			$('.logo.active').removeClass('active').next('.logo').addClass('active');
			
			var nRemaining = nTotal - nActive;
			if(nRemaining < nSlides) {
				nSlides = nRemaining;
			} else {
				nSlides = nDefaultSlides;	
			}
			if(nActive == 1) {
				nActive = nDefaultSlides;	
			}
			var nLeft = parseInt($('#logo-container').css('left')) - (nWidth * nSlides);
			nActive = nActive + nSlides;
			if(nTotal == nActive) {
				$('.slider-nav.next').hide();
			} else {
				$('.slider-nav.next').show();
			}
			bNext = false;			
			$('#logo-container').animate({
				'left':nLeft
			},
			250,
			"swing", 
			function(){ 
				bNext = true;
			});
		}
		$('.slider-nav.prev').css('display','block');
	});
	$('.slider-nav.prev').click(function(){
		if(bPrev == true) {
			$('.logo.active').removeClass('active').prev('.logo').addClass('active');
			
			var nRemaining = nActive - nVisible;
			if(nRemaining < nSlides) {
				nSlides = nRemaining;
			} else {
				nSlides = nDefaultSlides;	
			}
			var nLeft = parseInt($('#logo-container').css('left')) + (nWidth * nSlides);
			if(nLeft == 0) {
				$('.slider-nav.prev').css('display','none');
			}
			bPrev = false;			
			$('#logo-container').animate({
				'left':nLeft
			},
			250,
			"swing", 
			function(){ 
				bPrev = true; 
			});
			nActive = nActive - nSlides;
			if(nTotal > nActive) {
				$('.slider-nav.next').show();
			} else {
				$('.slider-nav.next').hide();
			}
		}
	});
}

var bSetEvents = false;
var nWindow = $(window).width();
var bResized = false;
var oJson = '';
var nSlides = 0;
var oLeftValues = new Object();
function parallaxImages() {
	if(bResized) {
		clearTimeout(resizeTimer);
		nWindow = $(window).width();
		bResized = false;
		nSlides = 0;
	}

	oJson = jQuery.parseJSON(sJson);
	var nMiddle = parseInt(nWindow / 2);
	$.each(oJson, function(sSlide,oSlide) { 
		oLeftValues[sSlide] = new Object();
		$.each(oSlide, function(sElement,oElement) {
			var nLeft = nMiddle + parseInt(oElement[1]);
			if(nSlides > 0) {
				nLeft += (nWindow * nSlides);	
			}
			$('.'+sSlide+'-'+oElement[0]).stop().animate({'left':nLeft},0);
			if(nSlides == 0) {
				$('.'+sSlide+'-'+oElement[0]).children('.pointer').show();
			}
			oLeftValues[sSlide][sElement] = nLeft;
		});
		nSlides++;
	});

	if(!bSetEvents) {
		bSetEvents = true;
		parallaxSlider(oJson,nSlides);
		parallaxSubmenu();
	}
	
	var resizeTimer = null;
	$(window).resize(function() {
		bResized = true;
		if(!resizeTimer) {
			$('#disciplines-submenu a.item'+nActiveSlide).removeClass('active');
			nActiveSlide = 1;
			$('#disciplines-submenu a.item'+nActiveSlide).addClass('active');
			$('#next').show();
			$('#prev').hide();
			resizeTimer = setTimeout("parallaxImages();", 300);
		}
	});
}

var nActiveSlide = 1;
function parallaxSlider(p_oJson,p_nSlides) {
	var nSlides = p_nSlides;
	var oJson = p_oJson;
	var nSlideTime = 2000;
	$('#next').click(function() {
		$('#prev, #next, #disciplines-submenu a, .pointer').unbind();
		$('#disciplines-submenu a.active').removeClass('active');
		$.each(oJson, function(sSlide,oSlide) { 
			$.each(oSlide, function(nIndex,oElement) {
				var nOslide = oSlide.length;
				var nSlidesWidth = nActiveSlide * nWindow;
				var nLeft = parseInt(oLeftValues[sSlide][nIndex]) - nSlidesWidth;
				if(sSlide == 'slide'+nActiveSlide || sSlide == 'slide'+(nActiveSlide+1)) {
					var nTimeOut = nSlideTime - oElement[2];
					if(sSlide == 'slide'+(nActiveSlide-1)) {
						nTimeOut = 0;
					}
					$('.'+sSlide+'-'+oElement[0]).delay(nTimeOut).animate(
						{left: nLeft},
						oElement[2],
						"jswing",
						function() {
							if(sSlide == 'slide'+nActiveSlide) {
								$(this).children('.pointer').show();
							} else {
								$(this).children('.pointer').hide();
							}
							if(sSlide == 'slide'+(nActiveSlide) && nIndex == (nOslide - 1)) {
								$('#prev').fadeIn(500);
								setTimeout("parallaxSlider(oJson,nSlides); parallaxInfo(); parallaxSubmenu();", 500);
							}
						}
					).children('.pointer').removeClass('open').next('.info-block').hide();
				} else {
					$('.'+sSlide+'-'+oElement[0]).css({'left':nLeft});
				}
			});
		});
		nActiveSlide++;
		$('#disciplines-submenu a.item'+nActiveSlide).addClass('active');
		if(nActiveSlide == nSlides) {
			$('#next').fadeOut(500);
		}
	});
	
	$('#prev').click(function() {
		$('#next, #prev, #disciplines-submenu a, .pointer').unbind();
		$('#disciplines-submenu a.active').removeClass('active');
		$.each(oJson, function(sSlide,oSlide) { 
			$.each(oSlide, function(nIndex,oElement) {
				var nOslide = oSlide.length;
				var nSlidesWidth = (nActiveSlide-2) * nWindow;
				var nLeft = parseInt(oLeftValues[sSlide][nIndex]) - nSlidesWidth;
				if(sSlide == 'slide'+nActiveSlide || sSlide == 'slide'+(nActiveSlide-1)) {
					var nTimeOut = nSlideTime - oElement[2];
					if(sSlide == 'slide'+(nActiveSlide-1) || sSlide == 'slide'+nActiveSlide) {
						nTimeOut = 0;
					}
					$('.'+sSlide+'-'+oElement[0]).delay(nTimeOut).animate(
						{left: nLeft},
						oElement[2],
						"jswing",
						function() {
							if(sSlide == 'slide'+nActiveSlide) {
								$(this).children('.pointer').show();
							} else {
								$(this).children('.pointer').hide();
							}
							if(sSlide == 'slide'+(nActiveSlide) && nIndex == (nOslide - 1)) {
								$('#next').fadeIn(500);
								setTimeout("parallaxSlider(oJson,nSlides); parallaxInfo(); parallaxSubmenu();", 500);
							}
						}).children('.pointer').removeClass('open').next('.info-block').hide();
				} else {
					$('.'+sSlide+'-'+oElement[0]).css({'left':nLeft});
				}
			});
		});
		nActiveSlide--;
		$('#disciplines-submenu a.item'+nActiveSlide).addClass('active');
		if(nActiveSlide == 1) {
			$('#prev').fadeOut(500);
		}
	});
}

function parallaxInfo() {
	$('.pointer').click(function() {
		if(!$(this).hasClass('open')) {
			$('.dslide').css('z-index','');
			$('.pointer').removeClass('open').next('.info-block').hide();
			$(this).parent('.dslide').css('z-index','10');
			$(this).addClass('open').next('.info-block').show();
		} else {
			$(this).parent('.dslide').css('z-index','');
			$(this).removeClass('open').next('.info-block').hide();
		}
	});
}

function parallaxSubmenu() {
	$('#disciplines-submenu a').click(function() {
		if(!$(this).hasClass('active')) {
			var nTarget = $(this).attr('class').replace('item','');
			if(nTarget == (nActiveSlide+1)) {
				$('#next').trigger('click');
			} else if(nTarget == (nActiveSlide-1)) {
				$('#prev').trigger('click');
			} else if(nTarget > (nActiveSlide+1)) {
				$('#prev, #next, #disciplines-submenu a, .pointer').unbind();
				$('#disciplines-submenu a.active').removeClass('active');
				var nFastSlides = nTarget - nActiveSlide;
				var nDslides = parseInt($('.dslide').size());
				$('.dslide').each(function(index) {
					var nCurrentLeft = $(this).css('left').replace('px','');
					var nLeft = parseInt(nCurrentLeft) - (nWindow * nFastSlides);
					if((nActiveSlide+nFastSlides) == 5) {
						$('#next').fadeOut(500);
					}
					$('#disciplines-submenu a.item'+(nActiveSlide+nFastSlides)).addClass('active');
					$(this).animate(
						{left: nLeft},
						2000,
						function() {
							if((index+1) == nDslides) {
								nActiveSlide += nFastSlides;
								$('#prev').fadeIn(500);
								$('.pointer').hide();
								$('.pointer.slide'+nActiveSlide).show();
								parallaxSubmenu();
								parallaxInfo();
								parallaxSlider(oJson,nSlides);
							}
						}
					);
				});
			} else if(nTarget < (nActiveSlide-1)) {
				$('#prev, #next, #disciplines-submenu a, .pointer').unbind();
				$('#disciplines-submenu a.active').removeClass('active');
				var nFastSlides = nActiveSlide - nTarget;
				var nDslides = parseInt($('.dslide').size());
				$('.dslide').each(function(index) {
					var nCurrentLeft = $(this).css('left').replace('px','');
					var nLeft = parseInt(nCurrentLeft) + (nWindow * nFastSlides);
						if((nActiveSlide-nFastSlides) == 1) {
							$('#prev').fadeOut(500);
						}
								$('#disciplines-submenu a.item'+(nActiveSlide-nFastSlides)).addClass('active');
						$(this).animate(
						{left: nLeft},
						2000,
						function() {
							if((index+1) == nDslides) {
								nActiveSlide -= nFastSlides;
								$('#next').fadeIn(500);
								$('.pointer').hide();
								$('.pointer.slide'+nActiveSlide).show();
								parallaxSubmenu();
								parallaxInfo();
								parallaxSlider(oJson,nSlides);
							}
						}
					);
				});
			}
		}
	});
}

var nTenthSeconds = 0;
var t = '';
function timedCount() {
	nTenthSeconds++;
	t = setTimeout("timedCount();", 100);	
}

var nSeconds = 0;
var t2 = '';
function clickCount() {
	clearTimeout(t);
	nTenthSeconds = 0;
	timedCount();
	
	var nClicks = 0;
	
	$('body').unbind();
	$('body').click(function() {
		nClicks++;
		if(nClicks == 15) {
			nClicks = 0;
			if(nTenthSeconds > 5) {
				nSeconds = nTenthSeconds / 10;
				alert('U heeft een opmerkelijk klikgedrag: 15 kliks in ' + nSeconds + ' seconden.');
			}
			clearTimeout(t);
			nSeconds = 0;		
		}
	});
	t2 = setTimeout("clickCount()", 3000);	
}

function portfolioDetail() {
	$('#images-container').cycle({ 
		speed: 1000,
		fx: 'scrollHorz',
		easing: 'easeInQuint',
		timeout: 0,
		prev: 'a.prev',
		next: 'a.next',
		requeueOnImageNotLoaded: true
	});
}
function validateForm(p_sForm) {

	switch(p_sForm) {
		case 'contactform':
			
			var rules = {};
			rules[oFields[p_sForm][1]] = {
				required: true,
				nonumber: true,
				notags: true
			};
			rules[oFields[p_sForm][3]] = {
				required: true,
				number: true,
				notags: true
			};
			rules[oFields[p_sForm][4]] = {
				required: true,
				email: true,
				notags: true
			};
			
		break;
	}

	$('#'+p_sForm).validate({
		rules: rules,
		errorPlacement: function(error, element) {
			element.parent().addClass('error');
		},
		success: function(label) {
			$('#'+label.attr('for')).parent().removeClass('error');
		},
		submitHandler: function(form) {
			form.trigger('submit');
		}
	});	
}

function initHash() {
	if(window.location.hash) {
		var sHash = window.location.hash.substr(1);
		$('.tabs li a').removeClass('active');
		$('.tab-'+sHash).addClass('active');
		$('.bg:not(.'+sHash+')').hide();
		$('.bg.'+sHash).fadeIn(300);
		$('.addresses .address:not(.'+sHash+')').hide();
		$('.addresses .address.'+sHash).show();
	}
}

function initTabs() {
	$('.tabs li a').click(function() {
		$('.tabs li a').removeClass('active');
		var sClass = $(this).attr('class').replace('tab-', '');
		$(this).addClass('active');
		$('.addresses .address').hide();
		$('.addresses .address.'+sClass).show();
		$('.bg:not(.'+sClass+')').fadeOut(300);
		$('.bg.'+sClass).fadeIn(300);
	});	
}
