$(document).ready(function(){
	if($('div.gallery').length != 0){
		$('div.gallery').gallSlide({
			active: (activePicture-1),
			duration: 900,
			autoSlide: 10000
		});
	}
	/*$('ul.accordion').accordion({
		active: ".selected",
		autoHeight: false,
		header: ".opener",
		collapsible: true,
		event: "click",
		changestart: function() {
			if ($.browser.msie) {
				$('ul.accordion').find('a').toggleClass('fake');
			}
		},
		change: function() {
			if ($.browser.msie) {
				$('ul.accordion').find('a').toggleClass('fake1');
			}
		}

	});*/
	initHover();
	fadeGall();
	initTwitter();
	rewriteEmail();
	initValidation("#medewerker-form");
	initValidation("#vestiging-form");
	initValidation("#vacature-form");
});

function initHover(){
	var _t = false;
	var _H = [];
		var _duration = 200; //in ms
		var h_class = 'hover';
		var _li = $('ul#nav > li');
		_li.each(function(){
			var _boxes = $(this).children('div.drop');
			var _boxH = _boxes.show().outerHeight(true);
			_H.push(_boxH);
			_boxes.height(0);
		});
		 _li.mouseenter(function(){
		 	var _i = _li.index($(this));
		 	var _f = true;
			$(this).addClass(h_class);
			var _box = $(this).children('div.drop');
			
			if(_f){
				_box.animate({height:_H[_i]},  {queue:false, duration:_duration});
				_f = false;
			}
			if(_t){
				_t = clearTimeout();
			}
		}).mouseleave(function(){
			$(this).removeClass(h_class);
			var _box = $(this).children('div.drop');
			_t = setTimeout(function(){
				_box.animate({height:0}, _duration, function(){
					_f = true;
				});
			}, 30)
		});
}


jQuery.fn.gallSlide = function(_options){
	// defaults options	
	var _options = jQuery.extend({
		active: 0,
		duration: 700,
		autoSlide: 5000
	},_options);

	return this.each(function(){
		var _hold = $(this);
		var _speed = _options.duration;
		var _timer = _options.autoSlide;
		var _wrap = _hold.find('ul.slider');
		var _el = _hold.find('ul.slider > li');
		var _next = _hold.find('a.link-next');
		var _prev = _hold.find('a.link-prev');
		var _count = _el.index(_el.filter(':last'));
		var _w = _el.outerWidth();
		var _wrapHolderW = Math.ceil(_wrap.parent().width()/_w);
		var _t;
		var _active = _options.active;
		if(_active >_el.length-1){
			_active = 0;
		}
		_el.removeClass('active');
		_el.eq(_active).addClass('active');
		
		_wrap.eq(0).css('marginLeft', (-(_w * _active)));
		
		function scrollEl(){
			_wrap.eq(0).animate({
				marginLeft: -(_w * _active) + "px"
			}, {queue:false, duration: _speed});
		}
		/* aUTOSLIDE TURNED OFF
		function runTimer(){
			_t = setInterval(function(){
				_active++;
				if (_active > (_count - _wrapHolderW + 1)) _active = 0;
				scrollEl();
			}, _timer);
		}
		runTimer();
		*/
		_hold.hover(function(){
			if(_t) clearTimeout(_t);
		}, function(){
			runTimer();
		});
		_next.click(function(){
			_active++;
			if (_active > (_count - _wrapHolderW + 1)) _active = 0;
			scrollEl();
			return false;
		});
		_prev.click(function(){
			_active--;
			if (_active < 0) _active = _count - _wrapHolderW + 1;
			scrollEl();
			return false;
		});
		_hold.mouseenter(function(){
			if(_t) clearTimeout(_t);
		}).mouseleave(function(){
			runTimer()
		});
	});
}

function fadeGall(){
	var wait_time = 5000; // in ms
	var change_speed = 800; // in ms
	var _hold = $('div.intro');
	if(_hold.length){
		var _t;
		var _f = true;
		var _list = _hold.find('ul.fader > li');
		var _btn = $('<ul class="slaid-list"></ul>');
		_hold.append(_btn);
		_list.each(function(_i){
			_btn.append('<li><a href="#">'+(_i+1)+'</a></li>');
		});
		_btn = _btn.find('a');
		var _a = _list.index(_list.filter('.active:eq(0)'));
		if(_a == -1) _a = 0;
		
		_list.removeClass('active').css('opacity', 0).eq(_a).addClass('active').css('opacity', 1);
		_btn.eq(_a).parent('li').addClass('active');
		_btn.click(function(){
			changeEl(_btn.index(this));
			return false;
		});
		_hold.mouseenter(function(){
			_f = false;
			if(_t) clearTimeout(_t);
		}).mouseleave(function(){
			_f = true;
			if(_t) clearTimeout(_t);
			if(_f && wait_time){
				_t = setTimeout(function(){
					if(_a < _list.length - 1) changeEl(_a + 1);
					else changeEl(0);
				}, wait_time);
			}
		});
		if(_f && wait_time){
			_t = setTimeout(function(){
				if(_a < _list.length - 1) changeEl(_a + 1);
				else changeEl(0);
			}, wait_time);
		}
		function changeEl(_ind){
			if(_t) clearTimeout(_t);
			if(_ind != _a){
				_list.eq(_a).removeClass('active').animate({opacity: 0}, {queue:false, duration:change_speed});
				_list.eq(_ind).addClass('active').animate({opacity: 1}, {queue:false, duration:change_speed});
				_btn.eq(_a).parent('li').removeClass('active');
				_btn.eq(_ind).parent('li').addClass('active');
				_a = _ind;
			}
			if(_f && wait_time){
				_t = setTimeout(function(){
					if(_a < _list.length - 1) changeEl(_a + 1);
					else changeEl(0);
				}, wait_time);
			}
		}
	}
}

function initTwitter(){
	// Basic usage
	if (twitterAccount != "")
	$('#twitter-container').liveTwitter(twitterAccount, {limit: 5, rate: 60000, refresh: true, mode: 'user_timeline', showAuthor: false});
}

function rewriteEmail(){
	var encoded_email = $("#medewerker_email").text();
	var decoded_email = Rot13.write(encoded_email);
	$("#medewerker_email").html(decoded_email);
}

Rot13 = {
    map: null,

    convert: function(a) {
        Rot13.init();

        var s = "";
        for (i=0; i < a.length; i++) {
            var b = a.charAt(i);
            s += ((b>='A' && b<='Z') || (b>='a' && b<='z') ? Rot13.map[b] : b);
        }
        return s;
    },

    init: function() {
        if (Rot13.map != null)
            return;
              
        var map = new Array();
        var s   = "abcdefghijklmnopqrstuvwxyz";

        for (i=0; i<s.length; i++)
            map[s.charAt(i)] = s.charAt((i+13)%26);
        for (i=0; i<s.length; i++)
            map[s.charAt(i).toUpperCase()] = s.charAt((i+13)%26).toUpperCase();

        Rot13.map = map;
    },

    write: function(a) {
        return Rot13.convert(a);
    }
}
