var twittertimer;

$(document).ready(function(){
// 	$('a[@rel*=lightbox]').lightBox(
// 	{
// 		imageLoading: 'img/lightbox-ico-loading.gif',
// 		imageBtnClose: 'img/lightbox-btn-close.gif',
// 		imageBtnPrev: 'img/lightbox-btn-prev.gif',
// 		imageBtnNext: 'img/lightbox-btn-next.gif',
// 		fixedNavigation : true
// 	});
    $('#advertentie_preview a').lightBox();
    $('#advertentie_afbeelding a').lightBox();
    $('#grote_afbeelding a').lightBox();
    //$('#advertentie_afbeelding a').lightBox();
	
	$('#advertentie_cycle')
		.cycle({ 
		    fx:     'fade',
		    speed:   300, 
		    timeout: 3000,
		    pause: 1,
		    next: '#advertentie_cycle'
		});
		
	init_formulieren();
	
	carroussel();
	twitterfeed();
	
	/**
	 *
	 * Fancybox koppelen aan linkjes met de class .cta_fancybox en aan het formulier van de vestiging contact cta
	 * 
	 */	
	var fancybox_submit = function() {
		var action = $(this).attr('action');
		var fields = $(this).serializeArray();
		var file_count = 0;
		var total_files = $('input[type="file"]', $(this)).length;
		
		if (total_files > 0) {
			$('input[type="file"]', $(this)).each(function() {
				if ($(this).attr('id')) {
					var field_name = $(this).attr('name');
					$.ajaxFileUpload({
		                url:'/ajax/doajaxfileupload.php?filename=' + $(this).attr('id'), 
		                secureuri:false,
		                fileElementId:$(this).attr('id'),
		                dataType: 'json',
		                success: function (data, status) {
		                    if(typeof(data.filelocation) != 'undefined') {
		                        if(data.error == '' && data.filelocation != '') {
		                        	fields.push({name:field_name,value:data.filelocation});
		                		}
		                    
								file_count++;
								if (file_count == total_files) {
									_fancybox_submit(action, fields);
								}
							}
		                },
		                error: function (data, status, e) {
		                    alert(e);
		                }
		            });
		        }
			});
		} else {
			_fancybox_submit(action, fields);
		}

	    return false;
    }
    
    var _fancybox_submit = function(action, fields) {
    	$.ajax({
	        type        : "POST",
	        cache       : false,
	        url         : action,
	        data        : fields,
	        success		: function(data) {
	            $('#cta_fancybox_form').replaceWith(data);
	            
	            window.setTimeout(fancybox_initialize, 100);
	        }
	    });
	}
    
    var fancybox_initialize = function() {
    	if ($('#cta_fancybox_form').length > 0) {
			$('#fancy_outer, #fancy_inner').height(($('#cta_fancybox_form').innerHeight() + 30) +'px');
			$.fn.fancybox.scrollBox();
			
			$('#fancy_inner a.fancybox_close').bind('click', $.fn.fancybox.close);
			$('#fancy_inner form').submit(fancybox_submit);
		}
	}
 	 	 	
	var fancybox_opts = {
		'frameHeight'		: 0,
		'hideOnContentClick': false,
		'showCloseButton'	: false,
		'callbackOnShow'	: fancybox_initialize,
		'centerOnScroll'	: false
	};
	
	$('a.cta_fancybox').fancybox(fancybox_opts);
	
	$('#frm-cta-contact').bind('submit', function() {
		if ($('select[name="target_id"] option:selected', $(this)).val() > 0) {
			var href = $(this).attr('action') + '?' + $(this).serialize();
			$('<a href="' + href + '">submit</a>').fancybox(fancybox_opts).click();
		}		
		return false;
	});
	
	/**
	 * 
	 * Tell-a-friend popup
	 * 
	 */	 	 	 	
	$('body').click(function() {
		$('#taf_overlay').fadeOut();
	});
	$('#taf_overlay').click(function(e) {
		e.stopPropagation();
	});
	$('#taf_overlay').submit(function() {
		$.ajax({
	        type        : "POST",
	        cache       : false,
	        url         : $(this).attr('action'),
	        data        : $(this).serializeArray(),
	        dataType	: 'json',
	        success		: function(data) {
				var msg = '';
				$('#taf_overlay input').removeClass('error');
				if (data.succes == true) {
					msg = data.msg;
					$('#taf_overlay')[0].reset();
					$('#taf_overlay ul').hide();
					if ($('#taf_overlay p').length) {
						$('#taf_overlay p').hide();
						$('#taf_overlay p').html(msg);
					} else {
						$('#taf_overlay').prepend('<p>' + msg + '</p>');
					}
					$('#taf_overlay p').show().animate({opacity: 1.0}, 3000, function() {
						$('#taf_overlay').fadeOut(200, function() {
							$('#taf_overlay ul').show();
							$('#taf_overlay p').hide();
						});
						
					});
				} else {
					for (var i in data.errors) {
						$('#taf_overlay input[name="'+ data.errors[i] +'"]').addClass('error');
					}
				}
	        }
	    });
		
		return false;	
	});
	
	$('.staf_btn').click(function() {
		var offset = $(this).offset();
		var t = offset.top - (($('#taf_overlay').outerHeight() - $(this).outerHeight()) / 2);
		var l = offset.left + $(this).outerWidth() + 20;
		
		$('#taf_overlay').css({ top: t + 'px', left: l + 'px'});
		$('#taf_overlay').fadeIn();
		
		return false;
	});
		
	/**
	 * GA Files meten
	 */	 
	var extensions = ['pdf','doc','docx','xls','csv','jpg','gif','mp3','swf','txt','ppt','zip','gz','dmg','xml'];
	var download_ga_folder = '/downloads/';
	$('a').each(function(){
		var _self = $(this);
		var u = $(this).attr('href');
		
		if(typeof(u) != 'undefined'){
			if(u.indexOf("?")!=-1){
				uext = u.substring(0, u.lastIndexOf("?"));
			}else{
				uext = u;
			};
			
			var ext = uext.split('.')[uext.split('.').length - 1];
				
			//check extensions
			for(i = 0; i < extensions.length; i++){
				if(ext == extensions[i]){
					_self.click(function(){
						pageTracker._trackPageview(download_ga_folder + _self.attr('href'));
						//return false;
					});
					break;
				};
			};
		};
	});
	
	/**
	 *
	 * Homepage blokken bij resizen aanpassen
	 * 
	 */
	resizeHomeItems();
	$(window).resize(function() {
		resizeHomeItems();
	});	 	 	 	
});

function resizeHomeItems() {
	if ($('.f_home1_feature_group').length > 0) {
		if ($(document).width() < 1051) {
			$('.f_home1_feature_group .f_feature_item').css({width: '100%'});
		} else {
			$('.f_home1_feature_group .f_feature_item').css({width: '48%'});
		}
	}
	
	var index = $('.twitterfeed .twitter_btns a').index($('.twitterfeed .twitter_btns a.active'));
	twitterfeed_height(index);
}

function onBefore() {
	$('#advertentie_preview').load('ajax/laad_advertentie.ajax.php', {ad_id: this.id});
}

function onAfter() {
	$('#advertentie_preview').load('ajax/laad_advertentie.ajax.php', {ad_id: this.id});
}

function toonAfbeelding(ad_num) {
	$('#advertentie_cycle').cycle('pause');
	$('#advertentie_cycle').cycle(ad_num);
}

function verbergAfbeelding() {
	$('#advertentie_cycle').cycle('resume');
}

function display_vestiging_select(state) {
	var vestiging_holder = document.getElementById('vestiging_holder');
	
	if (state == 'aan') {
		if (vestiging_holder) {
			vestiging_holder.style.display = 'block';
		}
	} else {
		if (vestiging_holder) {
			vestiging_holder.style.display = 'none';
		}
	}
	
}

function show_element(id) {	
	var element_object = document.getElementById(id);
	if (element_object) {
		element_object.style.display = 'block';
	} 
}

/**
 *
 * Twitterfeed functions
 * 
 */
function twitterfeed() {
	$('.twitterfeed .twitter_btns a').click(function() {
		if (!$(this).hasClass('active')) {
			index = $('.twitterfeed .twitter_btns a').index($(this));
			
			$('.twitterfeed p').removeClass('active').hide();
			twitterfeed_height(index);
// 			$('.twitterfeed p:eq('+(index)+')').addClass('active').show();
			
			$('.twitterfeed .twitter_btns a').removeClass('active');
			$(this).addClass('active');
			twitterfeed_next();
		}
		return false;
	});
	
	twitterfeed_height(0);
	twitterfeed_next();
}   

function twitterfeed_next() {
	clearTimeout(twittertimer);
	twittertimer = setTimeout(function() {
		var item = $('.twitterfeed .twitter_btns a.active').next('a');
		var index = $('.twitterfeed .twitter_btns a').index(item);
		if (index < 0) {
			index = 0;
			item = $('.twitterfeed .twitter_btns a:first');
		}
		
		$('.twitterfeed p.active').fadeOut(200, function() {
			$(this).removeClass('active');
		});
		twitterfeed_height(index);
		
		$('.twitterfeed .twitter_btns a').removeClass('active');
		item.addClass('active');
		
		twitterfeed_next();
	}, 8000);
}

function twitterfeed_height(index) {
	var h = $('.twitterfeed p:eq('+(index)+')').height() + 40;
	$('.twitterfeed div:first').animate({ height: h + 'px' }, { duration: 300, complete: function() {
		$('.twitterfeed p:eq('+(index)+')').fadeIn(200, function() {
			$(this).addClass('active');
		});
	} });
		
}

/**
 *
 * Carroussel functions
 *
 */
var carrouselActive = false;
var carrouselTimeout = null;

function carroussel() {
	/**
	 *
	 * Teksten ophalen 
	 * 
	 */	 	 	 	
	$('#carrousel-visual-box').append('<div class="text"></div>');
	$('#carrousel-visual-box img').each(function() {
		$('#carrousel-visual-box div.text').append('<p>' + $(this).attr('title') + '</p>');
		$(this).attr('title', '');
	});
	
	/**
	 *
	 * Click actie toevoegen
	 * 
	 */	 	 	 		
	$('#carrousel-item-container a').click( function() {
		if(!carrouselActive && !$(this).parent().hasClass('active')) {
			carrouselActive = true;
			if (carrouselTimeout != null) {
				window.clearTimeout(carrouselTimeout);
			}
			$('#carrousel-item-container a').css({ cursor: 'default'});
			
			/**
			 * 
			 * Item actief maken
			 * 
			 */			 			 			 			
			$('#carrousel-item-container .item').removeClass('active');
			$(this).parent().addClass('active');
			
			/**
			 *
			 * Pijltje verschuiven
			 * 
			 */			 			 			 			
			t = ($(this).parent().position().top + ($(this).parent().outerHeight() / 2)) - ($('#carrousel-arrow').outerHeight() / 2);
			$('#carrousel-arrow').animate({ top: t+'px' }, 200);	
			
			/**
			 *
			 * Index van het item bepalen
			 * 
			 */			 			 			 			
			index = $('#carrousel-item-container .item').index($(this).parent());
			
			/**
			 *
			 * Tekstblok animeren
			 * 
			 */			 			 			 			
			b = -($('.g_home1_carrousel').outerHeight());
			$('#carrousel-visual-box div.text').animate({ bottom: b+'px' }, { duration: 400, complete: function() { $('#carrousel-visual-box div.text p').removeClass('active'); $('#carrousel-visual-box div.text p:eq('+(index)+')').addClass('active'); $('#carrousel-visual-box div.text').animate({ bottom: '15px' }, 400); } }); 					
			
			/** 
			 *
			 * Afbeelding animeren
			 * 
			 */
			if ($('#carrousel-visual-box img').index($('#carrousel-visual-box img.active')) != index) {
				$('#carrousel-visual-box img.active').fadeOut(600).removeClass('active');
			}
			$('#carrousel-visual-box img:eq('+(index)+')').fadeIn(600, function() {
				carrouselActive = false;				
				$('#carrousel-item-container a').css({cursor: 'pointer'});
				carrouselTimeout = window.setTimeout(carrouselNext, 5000);
			}).addClass('active');
		}
		return false;
	});
	
	/**
	 *
	 * Starten van de carrousel
	 * 
	 */	 	 	 	
	$('#carrousel-item-container .item.active').removeClass('active').find('a').trigger('click');
}

function carrouselNext() {
	if ($('#carrousel-item-container .item.active').hasClass('last')) {
		$('#carrousel-item-container .item:first').find('a').trigger('click');
	} else {
		$('#carrousel-item-container .item.active').next('.item').find('a').trigger('click');
	}
}


