	/***

	JavaScript Document
	generic event listener
	syntax voor een listener zonder argumenten:
	
	arg 1: het DOM object
	arg 2: de naam van het event tussen enkele quotes, zonder 'on'
	arg 3: de functienaam zonder quotes
	arg 4: standaard false

	syntax voor een listener met argumenten:
	
	add_event (window, 'load', function (e) {
		hier de statements;
	}, false);

	***/

	function add_event (obj, type, listener, use_capture) {
		if(typeof window.addEventListener != 'undefined') {
			//.. gecko, safari, konqueror and standard
			obj.addEventListener(type, listener, use_capture);
		}
		else if(typeof document.addEventListener != 'undefined') {
			//.. opera 7
			obj.addEventListener(type, listener, false);
		}
		else if(typeof window.attachEvent != 'undefined') {
			//.. win/ie
			obj.attachEvent('on' + type, listener);
		}
		else
		{
			if(typeof window.onload == 'function') {
				var existing = onload;
				window.onload = function() {
					existing ();
					listener ();
				}
			}
			else {
				window.onload = listener;
			}
		}
	}

	function stop_event (e) {
		if(!e) var e = window.event;
		alert (e);
		
		//e.cancelBubble is supported by IE - this will kill the bubbling process.
		e.cancelBubble = true;
		e.returnValue = false;
	
		//e.stopPropagation works only in Firefox.
		if (e.stopPropagation) {
			e.stopPropagation ();
			e.preventDefault ();
		}
		return false;
	}