var filter_val = '';
var objImage;
var validator;


$(document).ready(function()
{
	//INIT_preload();
	INIT_page();
});

function INIT_page()
{
	
	$("#wrap_menu ul li a").click(function(e)
	{
		e.preventDefault();
		var getval = $(this).text();
		var getlink = $(this).attr('href');
		
		if(getval.search(/tobo/i) == -1){
			$.cookie('filter_val', null);
		}
		
		window.location=getlink;
	});
	
	
	//set title animation
	// if($("#wrap_main_right h1").size())
	// {
	// 	var animtxt  = $('#wrap_main_right').find("h1:first");
	// 	var txt = animtxt.html();
	// 	animtxt.empty();
	// 	jQuery({count:0}).animate({count:txt.length}, {
	//     	duration: 500,
	// 		easing:'easeOutCirc',
	// 		queue:false,
	//     	step: function() {
	//         	animtxt.html( txt.substring(0, Math.round(this.count)) );
	//     	}
	// 	});
	// }
	
	
	//home
	if($("#wmr_home").size())
	{	
		//$("#wmr_home").height(80);
		
		// $("#wmr_home").height(0);
		// 		
		// 		if($('#wmr_home img').size() > 0)
		// 		{
		// 			$('#wmr_home img').load(function()
		// 			{
		// 				
		// 				var h = $("#wmr_home img").height();
		// 				
		// 				
		// 				console.log(h);
		// 								
		// 				$('#wmr_home').delay(500).animate( { height: h }, { duration: 1000, easing: 'easeOutCirc'});
		// 			});
		// 		}
		// 		else
		// 		{
		// 			var h = $("#wmr_home").height() + 30;
		// 			$('#wmr_home').delay(500).animate( { height: h }, { duration: 1000, easing: 'easeOutCirc'});
		// 		}	
	}
	
	$('#home_form').submit(function() 
	{
		if($("form#home_form").valid())
		{
			url = '/sys/controller/ajax.php';
			
			var params  = {'Naam': $('#Naam').val(), 'Straat':$('#Straat').val(), 'Nr':$('#Nr').val(), 'Post':$('#Post').val(), 'Gemeente':$('#Gemeente').val(), /*'Tel':$('#Tel').val(),*/ 'Ouders':$('#Ouders').val(), 'Bz':$('#Bz').val(), 'Email':$('#Email').val(), 'controller':'home_form'};
			  
			$.ajax({type: 'POST', url: url, data: params, success: function(data)
			{
				if(data == 1){
					validator.resetForm();
					$('#Naam').val('');
					$('#Straat').val('');
					$('#Nr').val('');
					$('#Post').val('');
					$('#Gemeente').val('');
					// $('#Tel').val('');
					$('#Ouders').val('');
					$('#Bz').val('');
					$('#Email').val('');
					//$('p.feedback').html('<p>Dank voor uw aanvraag.<br/> Er zal zo spoedig mogelijk iemand van school contact opnemen om een afspraak te maken.</p>');	
					$('p.feedback').html('<p>Dank voor uw inschrijving.</p>');	
				}else{
					$('p.feedback').html('<p>Oeps! Er is iets fout gelopen, probeer opnieuw aub.</p>');
				}
			}});
		}
		
	  
	  return false;
	});
	
	validator = $("form#home_form").validate(
	{ 
		rules: 
		{ 
			Naam: 		{ required: true },
			Straat: 	{ required: true }, 
			Nr: 		{ required: true }, 
			Post: 		{ required: true },
			Gemeente: 	{ required: true },
			// Tel: 		{ required: true },
			Ouders: 	{ required: true },
			Bz: 		{ required: true },
			Email: 		{ required: true, email: true } 
		}, 
		messages: 
		{
			Naam: " ", 
			Straat: " ",
			Nr: " ", 
			Post: " " ,
			Gemeente: " ", 
			// Tel: " ", 
			Ouders: " ", 
			Bz: " ", 
			Email: " " 
		} 
	});
	
	//check valid boolean -> $("form#contactform").valid()
	//reset -> validator.resetForm();


	//studie
	if($("#wml_studie").size())
	{
		setTimeout(function(){$('.page tr td').wrapInner('<div/>');}, 600);
		
		var total = $("ul#studie-nav li").not("ul li ul li").size();
		$('ul#studie-nav li a').not("ul li ul a").click(function(e)
		{
			e.preventDefault();
			if(!$(this).hasClass('active')){
				$('ul#studie-nav li').find('ul').slideUp();
				$('ul#studie-nav li a').not("ul#studie-nav li ul li a").removeClass('active');
				$(this).parent().find('ul').slideDown();
				$(this).addClass('active');
			}
			else{
				$(this).removeClass('active');
				$(this).parent().find('ul').slideUp();
			}
			return false;
		});
		$('ul#studie-nav li ul li a').click(function(e)
		{
			e.preventDefault();
			if(!$(this).hasClass('active'))
			{
				var id = $(this).attr('rel');
				$('ul#studie-nav ul li a').removeClass('active');
				$('a#wml_structuur').removeClass('active');
				$(this).addClass('active');
				//$('.page').slideUp();
				$('.page').hide();
				$('#page'+id).show();
				$('#page'+id+' tr td div').hide().each(function(intIndex){
					$(this).delay(20*intIndex).fadeIn(200);
				});
			}
			return false;
		});
		$('a#wml_structuur').click(function(e)
		{
			e.preventDefault();
			if(!$(this).hasClass('active'))
			{
				var id = $(this).attr('rel');
				$('ul#studie-nav li a').removeClass('active');
				$('ul#studie-nav li').find('ul').slideUp();
				$(this).addClass('active');
				$('.page').slideUp();
				$('#page'+id).show();
				$('#page'+id+' tr td div').hide().each(function(intIndex){
					$(this).delay(20*intIndex).fadeIn(400);
				});
			}
			return false;
		});
	}
	
	
	//foto-albums
	if($("#foto_holder").size())
	{
		function setImg(path)
		{
			$.scrollTo( '#wrap_main_right');
			
			var h = $('#fh_holder').height();
			//if(h < 100){h = 300; $('#foto_holder').height(300);}
			startloading(h);
			
			objImage = null;
			objImage = new Image();
			objImage.src = path;
			objImage.onLoad = imagesLoaded(path);		
		}
		
		var activepic = 0;
		var totalpics = $('#album_holder ul li').size();
		
		$('#album_holder ul li a').click(function(e)
		{
			activepic = $(this).index('#album_holder ul li a');
			e.preventDefault();
			var imgpath = $(this).attr('href');
			setImg(imgpath);
			$('#foto_holder').slideDown();
			return false;
		});
		
		$("#foto_holder a#close").click(function(e)
		{
			e.preventDefault();
			$('#fh_holder').find('img').attr('src', '');
			$('#foto_holder').slideUp();
			return false;
		});
		$("#foto_holder a#prev").click(function(e)
		{
			e.preventDefault();
			if(activepic == 0){activepic = totalpics-1;}
			else{activepic--;}
			var imgpath = $('#album_holder ul li:eq('+activepic+')').find('a').attr('href');
			setImg(imgpath);
			return false;
		});
		$("#foto_holder a#next").click(function(e)
		{
			e.preventDefault();
			if(activepic == totalpics-1){activepic = 0;}
			else{activepic++;}
			var imgpath = $('#album_holder ul li:eq('+activepic+')').find('a').attr('href');
			setImg(imgpath);
			return false;
		});
		
		$("#fh_holder").click(function(){
			$("#foto_holder a#next").click();
		});
	

	}
	
	
	//filter
	if($("#filter").size())
	{
		// custom css expression for a case-insensitive contains()
		jQuery.expr[':'].Contains = function(a,i,m){
		   return (a.textContent || a.innerText || "").toUpperCase().indexOf(m[3].toUpperCase())>=0;
		};

		var header = $('#filter');
		var list = $('#filter-list');
		
		var form = $("<form>").attr({"class":"filterform","action":"#"}),
			input = $("<input>").attr({"class":"filterinput","type":"text"});
			
		$(form).append(input).appendTo(header);

		$(input).change( function ()
		{
			var filter = $(this).val();

			if(filter) {
			// this finds all links in a list that contain the input,
			// and hide the ones not containing the input while showing the ones that do
				$(list).find("a:not(:Contains(" + filter + "))").parent().slideUp(300);
				$(list).find("a:Contains(" + filter + ")").parent().slideDown(300);	
			} else {
				$(list).find("li").slideDown();
			}
			
			if(filter == ''){
				$.cookie('filter_val', null);
			}
			return false;
		}).keyup( function () {
			// fire the above change event after every letter
			$(this).change();
		});
		

		if( $.cookie('filter_val') !== null){
			$("#filter input").val($.cookie('filter_val')).change();
		}
		
		if(filter_val == "TOBO"){
			$("#filter input").val('TOBO').change();
			$.cookie('filter_val', 'TOBO' );
		}
		
		$("#filter input").focus();  
		
		
		$("#filter-list li a").click(function(e)
		{
			e.preventDefault();
			var getval = $(this).text();
			var getlink = $(this).attr('href');

			if(getval.search(/tobo/i) == -1){
				$.cookie('filter_val', null);
			}

			window.location=getlink;
		});
		
		
		//archive

		$('ul#archive-list li').not("ul#archive-list li ul li").each(function(intIndex)
		{
			if($(this).find('ul li').size() < 0){
				$(this).remove();
			}
		});
		$('ul#archive-list li a').not("ul li ul a").click(function(e)
			{
				e.preventDefault();
				if(!$(this).hasClass('active')){
					$('ul#archive-list li').find('ul').slideUp();
					$('ul#archive-list li a').not("ul#archive-list li ul li a").removeClass('active');
					$(this).parent().find('ul').slideDown();
					$(this).addClass('active');
				}
				else{
					$(this).removeClass('active');
					$(this).parent().find('ul').slideUp();
				}
				return false;
			});	
	}
	

	

	//contact
	if($("#gMap").size())
	{
		var	gmap_options = 
		{
			address: "Grote Hulststraat 26, 8700 Tielt, België", 
		    zoom:     16,
		    maptype:  G_NORMAL_MAP,
			markers:   [
							{
								address: "Grote Hulststraat 28, 8700 Tielt, België", 
								html: "<h2>Katholiek Secundair Onderwijs Tielt</h2><p>Vrij Technisch Instituut<br/>Grote Hulststraat 28<br/>8700 Tielt, België<br/>051 40 05 68</p> <p>&rarr; <a href='http://maps.google.be/maps?f=q&source=s_q&hl=nl&geocode=&q=Tielt+Grote+Hulststraat+26,+8700+Tielt,+Belgi%C3%AB&sll=50.805935,4.432983&sspn=4.832908,12.810059&ie=UTF8&hq=&hnear=Grote+Hulststraat+28,+Tielt+8700+Tielt,+West-Vlaanderen,+Vlaams+Gewest&ll=50.99712,3.328879&spn=0.009399,0.02502&z=16&iwloc=r0'>Routebeschrijving</a></p>",
								popup: true
							}
						]
		};
		
		
		
		setTimeout(function(){$("#gMap").gMap(gmap_options);}, 800);
		
		//set contactlist
		var total = $("ul#contactlist li").size();
		$('ul#contactlist li').click(function()
		{
			if(!$(this).hasClass('active')){
				$('ul#contactlist li').find('span.data').slideUp();
				$('ul#contactlist li').removeClass('active');
				$(this).find('span.data').slideDown();
				$(this).addClass('active');
			}
		});
		$('ul#contactlist li').each(function(intIndex){
			if (intIndex == 0){$(this).find('span.data').slideDown();}
			else{$(this).find('span.data').slideUp((total-intIndex)*150);}
		});
		
	}
	
	if($("#calendar").size())
	{
		$("#calendar").datepicker(
		{
			minDate: 0,
			maxDate: '12m',
			nextText: '→',
			prevText: '←',
			monthNames: ['januari','februari','maart','april','mei','juni','juli','augustus','september','oktober','november','december'],
			dayNamesMin: ['Zo', 'Ma', 'Di', 'Woe', 'Do', 'Vr', 'Za'],
			onChangeMonthYear: function(year, month, inst)
			{
				changeCalendar(month, year);
		    }
		});
		
		function changeCalendar(month, year)
		{
			var url  	= '/sys/controller/ajax.php';
			var params  = {'m':month, 'y':year, 'controller':'kalender_get'};

			$.ajax(
			{
				type: 'POST',
				url: url,
				data: params,
				success: function(data){
			       	$('#calendar-detail').html(data);
					$("#calendar-detail li").hide();
					$("#calendar-detail li").each(function(intIndex){
						$(this).delay(100*intIndex).fadeIn(400);
					});
				}
			});
		}
		
		var d = new Date();
		
		$("#calendar-detail .next").live('click', function(e){
			e.preventDefault();
			var getM = $(this).attr('rel');
			changeCalendar(getM, d.getFullYear());
			return false;
		});
		
		changeCalendar(d.getMonth()+1, d.getFullYear());
	}
	
	if($("#brieven-sort").size())
	{
		$('ul#brieven-sort li a').hide();
		$('#brieven-detail li a').hide();
		$('ul#brieven-sort li a').each(function(intIndex){
			$(this).delay(150*intIndex).fadeIn(500);
		});
		$('#brieven-detail li a').each(function(intIndex){
			$(this).delay(150*intIndex).fadeIn(500);
		});
		
		$('ul#brieven-sort li a').click(function(e)
		{
			e.preventDefault();
			if(!$(this).hasClass('active'))
			{

				$('ul#brieven-sort li a').removeClass('active');
				$(this).addClass('active');
				var selector = $(this).attr('rel');
				
								
				if(selector == '0' && $(this).hasClass('boekenlijst'))
				{
					$('#brieven-detail ul li').slideDown();
					$('#brieven-detail ul li a').each(function(intIndex)
					{
						$(this).parent().removeClass('w');
						var numb = intIndex % 2;
						if(numb == 0){
							$(this).parent().addClass('w');
						}
					});
				}
				else
				{
					var innerCount = 0;
					
					$('#brieven-detail ul li a').each(function(intIndex)
					{
						if($(this).attr('rel') == selector){
							$(this).parent().slideDown();
							$(this).parent().removeClass('w');
							var numb = innerCount % 2;
							if(numb == 0){
								$(this).parent().addClass('w');
							}
							innerCount++;
						}
						else{
							$(this).parent().slideUp();
						}
					});		
				}	
			}
			return false;
		});
	
		$('ul#brieven-sort li a:first').click();
	}
}
function imagesLoaded( imgpath)
{
	if(objImage.complete){
		$('#fh_holder').find('img').attr('src', imgpath);
		stoploading();
	}
	else{
		setTimeout( "imagesLoaded('"+imgpath+"');", 50);	
	}
}
function startloading(h)
{
	$('#fh_holder').find('img').fadeTo(300, 0);
	$('#fh_preloader').fadeTo(300, 0.8);
	$('#fh_preloader').height(h);
}
function stoploading()
{
	$('#fh_holder').find('img').stop().fadeTo(300, 1);
	$('#fh_preloader').stop().hide()
}
function INIT_preload()
{
	(function($) {
	  var cache = [];
	  // Arguments are image paths relative to the current page.
	  $.preLoadImages = function() {
	    var args_len = arguments.length;
	    for (var i = args_len; i--;) {
	      var cacheImage = document.createElement('img');
	      cacheImage.src = arguments[i];
	      cache.push(cacheImage);
	    }
	  }
	})(jQuery);
	
	jQuery.preLoadImages("/img/content/home/vandaag.jpg");
}


