function initfilter(legtxt, labtxt, restxt) {
	if (document.getElementById && document.createTextNode) {
		var theTable = document.getElementById('pub');
		if (!theTable) return true;
		
		//create the filter form
		var fform = document.createElement('form');
		var ffieldset = document.createElement('fieldset');
		var flegend = document.createElement('legend');
		var flabel = document.createElement('label');
		var ffield = document.createElement('input');
		var freset = document.createElement('span');
		
		// set attributes
		fform.id = 'filter';
		flabel.htmlFor = 'fwords';
		freset.id = 'resetbutton';
		ffield.id = 'fwords';
		ffield.name = 'filter';
		ffieldset.id = 'filtermeplz';
		ffield.value = '';
		
		// set text elements
		flegend.appendChild(document.createTextNode(legtxt));
		flabel.appendChild(document.createTextNode(labtxt));
		freset.appendChild(document.createTextNode(restxt));
	
		// create form
		fform.appendChild(ffieldset);
		ffieldset.appendChild(flegend);
		ffieldset.appendChild(flabel);
  		ffieldset.appendChild(ffield);
		ffieldset.appendChild(freset);
		theTable.parentNode.insertBefore(fform, theTable);
		
		// init filter on type
		ffield.onchange = function() {
      		filter(this, 'pub', '1');
    	}
		
		ffield.onkeyup = function() {
      		filter(this, 'pub', '1');
    	}
		
		// prevent form post
		fform.onsubmit = function() {
      		return false;
    	}
		
		// reset
		freset.onclick = function() {
      		ffield.value = '';
			for (var i = 1; i < theTable.rows.length; i++) {
				theTable.rows[i].style.display = '';
			}
    	}
    	ffield.onblur = function()
		{
			elemnt = document.getElementById('fwords');
			searchBlur(elemnt,'Zoek naar evenement op naam, datum, plaats enz.');
		}
		ffield.onfocus = function()
		{
			elemnt = document.getElementById('fwords');
			searchFocus(elemnt,'Zoek naar evenement op naam, datum, plaats enz.');
		}
		
		elemnt = document.getElementById('fwords');
		searchBlur(elemnt,'Zoek naar evenement op naam, datum, plaats enz.');
	}
}

function filter(phrase, _id) {
	var words = phrase.value.toLowerCase().split(" ");
	var table = document.getElementById(_id);
	if (!table) return true;
	var ele;
	
	for (var r = 0; r < table.rows.length; r++) {		
		ele = table.rows[r].innerHTML.replace(/<[^>]+>/g,"");
		var displayStyle = 'none';
		
		if(table.rows[r].innerHTML.indexOf('<h2>') == -1) {
			for (var i = 0; i < words.length; i++) {
				if (ele.toLowerCase().indexOf(words[i])>=0) {
					displayStyle = '';
				} else {
					displayStyle = 'none';
				}
			}
		} else {
			displayStyle = '';
		}
		
		table.rows[r].style.display = displayStyle;
	}
}

function filterByStr(str, _id) {	
	var words = str.toLowerCase().split();
	var table = document.getElementById(_id);
	if (!table) return true;
	var ele;
	
	for (var r = 0; r < table.rows.length; r++) {		
		ele = table.rows[r].innerHTML.replace(/<[^>]+>/g,"");
		var displayStyle = 'none';
		
		for (var i = 0; i < words.length; i++) {
			if (ele.toLowerCase().indexOf(words[i])>=1) {
				displayStyle = '';
			} 
			else {
				displayStyle = 'none';
			}
		}
		
		table.rows[r].style.display = displayStyle;
	}
}

function searchBlur(elem,txt){
	if(elem.value == ''){
		elem.style.fontStyle = 'italic';
		elem.value = txt;
	}
	
}

function searchFocus(elem,txt){
	
	if(elem.value == txt){
		elem.style.fontStyle = 'normal';
		elem.value = '';
	}
}
