// Basis functie om dom elementen mee op te halen

function tag(t){
	return document.getElementsByTagName(t);
}

var maandLengtes = new Array(31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31);

function getPos(element_id){
	var positions = new Array();
	var element = document.getElementById(element_id);
	if (element != null){
		positions["x"] = element.style.left;
		positions["y"] = element.style.top;
	}
	return positions;
}

function buildDays(dag_id, maand_id, jaar_id){
	var dag_element = document.getElementById(dag_id);
	var maand_element = document.getElementById(maand_id);
	var jaar_element = document.getElementById(jaar_id);
	if (dag_element != null && maand_element != null && jaar_element != null){
		dag = 1;
		if (dag_element.options.length > 0){
			var dag = parseFloat(dag_element.options[dag_element.selectedIndex].value);
		}
		var maand = parseFloat(maand_element.options[maand_element.selectedIndex].value);
		var jaar = parseFloat(jaar_element.options[jaar_element.selectedIndex].value);
		var dagen = maandLengtes[(maand-1)];
		if(maand == 2 && isLeap(jaar)){
			dagen = 29;
		}
		dag_element.options.length = 0;
		var found = false;
		for(i = 1; i <= dagen; i++){
			var option = document.createElement("OPTION");
			var optionText = i;
			if (optionText < 10){
				optionText = "0"+optionText;
			}
			option.text = optionText;
			option.value = i;
			if (i == dag){
				option.selected = true;
				found = true;
			} else if(i == dagen && !found){
				option.selected = true;
			}
			dag_element.options.add(option);
		}
	}
}

function isLeap(jaar){
	if (jaar % 400 == 0){
		return true;
	} else if (jaar % 100 == 0){
		return false;
	} else if (jaar % 4 == 0){
		return true;
	} else {
		return false;
	}
}

function moveTo(elementId, x, y){
	var element = document.getElementById(elementId);
	if(element != null){
		element.style.position = "absolute";
		element.style.left = x;
		element.style.top = y;
	}
}

function isText(string){
	string = string.toLowerCase();
	var l = string.length;
	var allowed = "abcdefghijklmnopqrstuvwxyz";
	var valid = true;
	for(i = 0; i < string.length; i++){
		var letter = string.charAt(i);
		if(!allowed.indexOf(letter)){
			valid = false;
		}
	}
	return valid;
}

function isNumeric(number){
	var string = number+"";
	string = string.toLowerCase();
	var allowed = "0123456789";
	var valid = true;
	for(i = 0; i < string.length; i++){
		var nr = string.charAt(i);
		if(!allowed.indexOf(nr)){
			valid = false;
		}
	}
	return valid;
}

function isPhone(number){
	var string = number+"";
	string = string.toLowerCase();
	string.replace("-", "");
	string.replace(" ", "");
	if(isNumeric(string)){
		
	} else {
		return false;
	}
}

function isLength(string, length){
	if(string.length == length){
		return true;
	} else {
		return false;
	}
}

function isEmpty(string){
	if(string.length == 0){
		return true;
	} else {
		return false;
	}
}

function resizeWindow(w,h){
	window.resizeTo(w,h);
}

function clearText(e){
	e.value = '';
}

function fillEmpty(e){
	if(e.value == ''){
		e.value = 'Trefwoord';
	}
}

$(function() {

	$('.back').css({
		cursor:'pointer'
	});
	$('.back').click(function(){
		history.back();
	});
	$('.slideshow').each(function(){
		var data = eval('('+$(this).attr('ssData')+')');
		$('.ssImage').css({visibility:'visible'});
		$(this).cycle(data);
		$(this).height(data.height);
		$(this).width(data.width);
	});

	$('.googleMap').each(function(){
		var opts = eval('('+$(this).attr('mapOptions')+')');
		var center = eval('('+opts.center+')');
		opts.center = new google.maps.LatLng(center.b,center.c);
		opts.zoom = parseFloat(opts.zoom);
		var el = document.getElementById($(this).attr('id'));
		// Markers ophalen
		var markers = [];
		$(this).find('.marker').each(function(){
			markers[markers.length] = {
				data:eval('('+$(this).attr('markerOptions')+')'),
				description:$(this).html()
			}
		});
		var map = null;
		if(el){
			map = new google.maps.Map(el,opts);
		}
		if(map != null && markers.length > 0){
			for(var i = 0; i < markers.length; i++){
				var opts = markers[i].data;
				if(opts.cmsDraggable != undefined){
					opts.draggable = opts.cmsDraggable;
				}
				if(opts.cmsClickable != undefined){
					opts.clickable = opts.cmsClickable;
				}
				var position = eval('('+opts.position+')');
				opts.position = new google.maps.LatLng(position.b,position.c);
				opts.map = map;
				var m = new google.maps.Marker(opts);
				if(markers[i].description != ''){
					var w = new google.maps.InfoWindow({
						content:markers[i].description,
						position:opts.position
					});
					w.open(map);
					google.maps.event.addListener(m, 'click', function(e){
						w.open(map);
					});
				}
			}
		}
	});

	var s = $('#contentSlideshowHome');
	if(s.length > 0){
		s.cycle({
			width: 868,
			height: 377,
			fx: 'uncover',
			speed: 1000,
			random: false
		});
	}

	var slider = {};
	slider.width = 177;
	slider.index = 0;
	slider.id = 'photoShow';
	slider.moving = false;

	function next(elem){
		do{
			elem = elem.nextSibling;
		} while (elem && elem.nodeType != 1);
		return elem;
	}

	function prev(elem){
		do{
			elem = elem.previousSibling;
		} while (elem && elem.nodeType != 1);
		return elem;
	}

	function first(elem){
		elem = elem.firstChild;
		return elem && elem.nodeType != 1 ? next(elem) : elem;
	}

	function last(elem){
		elem = elem.lastChild;
		return elem && elem.nodeType != 1 ? prev(elem) : elem;
	}

	function disconnect(){
		var f = first(document.getElementById('photoShow'));
		var n = next(f);
		var nId = n.id;
		nId = nId.split('_');
		nId = nId[(nId.length-1)];
	}

	function connect(){
		var f = first(document.getElementById('photoShow'));
		var n = next(f);
		var nId = n.id;
		nId = nId.split('_');
		nId = nId[(nId.length-1)];
	}


	$("#volgende").click(function(){ 
		if(!slider.moving){
			var el = document.getElementById(slider.id);
			el = first(first(el));
			var td = first(el).cloneNode(true);
			el.appendChild(td);
			slider.moving = true;
			$("#"+slider.id).animate({left: -slider.width}, 500, 'swing', function(){
				var table = document.getElementById(slider.id);
				var el = first(first(table));
				var td = first(el);
				td.parentNode.removeChild(td);
				table.style.left = 0;
				slider.moving = false;
				addFB();
			});
		}
	});
	$("#vorige").click(function(){
		if(!slider.moving){
			var table = document.getElementById(slider.id);
			el = first(first(table));
			var td = last(el).cloneNode(true);
			var f = first(el);
			el.insertBefore(td, f);
			table.style.left = '-'+slider.width+'px';
			slider.moving = true;
			$("#"+slider.id).animate({left: 0}, 500, 'swing', function(){
				var table = document.getElementById(slider.id);
				var el = first(first(table));
				var td = last(el);
				td.parentNode.removeChild(td);
				slider.moving = false;
				addFB();
			});
		}
	});
	function addFB(){
		$('.pagePhotoImg').click(function(){
			fb.start(document.getElementById($(this).attr('id')));
			return false;
		});
	}
	addFB();
});
