//
// global scripts, eg remove text in searchbox onclick

function submitnumform(elid, oref ) {
	var wordmatch = (txt_searchbox_numbers) ? txt_searchbox_numbers : 'Nummer...';
	var el = document.getElementById(elid);
	if (el && el.numsearchbox) {
		
		// numbersearch default
		if( !el.status && el.numsearchbox.value != wordmatch && el.numsearchbox.value != '' ) {
			
			el.submit();	
		} else if( el.status && el.relatie && el.datum && ( (el.numsearchbox.value != wordmatch && el.numsearchbox.value != '' ) || el.status.value != '' ||  el.relatie.value != '' || el.datum.value != '' || el.bestemming.value != '' ) ) {
			if( el.numsearchbox.value == wordmatch ) {
				el.numsearchbox.value = '';
			}
			el.submit();
		}
		
	} else if (el && el.numsearchboxhome) {
		
		// numbersearch home has different id
		if( !el.status && el.numsearchboxhome.value != wordmatch && el.numsearchboxhome.value != '' ) {
			
			el.submit();	
		} 
		
	}
	if (oref) {
		// toch input submit
		return false;
	}
	
	// link so no return
	
}

function submitsearchform(elid) {
    var wordmatch = (txt_searchbox_words) ? txt_searchbox_words : 'Zoek...';
	var el = document.getElementById(elid);
	if (el && el.query && el.query.value != wordmatch && el.query.value != '') {
		el.submit();
	}
	// input submit so return false to abort execution
	return false;
}

function submitagendaform(elid) {
	var el = document.getElementById(elid);
	if (el && el.selectjaar && el.selectjaar.value != '' && el.selectmaand && el.selectmaand.value != '') {
		el.submit();
	}
	// link so no return
}

function submitsearchformresults(elid) {
	var el = document.getElementById(elid);
	if (el && el.searchboxresults && el.searchboxresults.value != '' && el.searchboxresults.value != 'Zoek...'  ) {
		el.submit();
	}
	// input submit so return false to abort execution
	return false;
}

function submitmailingform(elid) {
	var el = document.getElementById(elid);
	
	el.submit();
	// link so no return
}

function submitcontactform(elid) {
	var el = document.getElementById(elid);
	
	el.submit();
	// link so no return
}

// firefox is slow in finding it
var filterbusy = false;
function ul_remove_filter(num,frmid) {
	if (!filterbusy) {
		filterbusy = true;
		var el = document.getElementById('filter'+num);
		if (el) {	
			el.value = '';
			el.form.submit();
		}
	}
	//return false
}

function ul_add_query(query) {
	 var desc = 'qu:' + encodeURI(query.replace(':',' '));	 
	 ul_add_filter( desc )
	 //return false;
}

function ul_add_filter( desc ) {
	var s = new String;
	s = window.location.pathname;			
	var newloc = s.match(/\/nl\//) ? '/nl/actueel/alle-publicaties/' : '/en/news/all-publications/';	
	var cs = (window.location.search=='') ? '?' : '&';
 	newloc += window.location.search;
 	newloc = newloc.replace( /page=[0-9]+/,'page=1');
 	newloc += cs + encodeURI('zf[]=' + desc.replace(':','%3A'));
 	window.location = newloc
	//return false;
}

var xjxnumresult_busy = false;
var xjxmsr = 0;

// search update done, restore page
function ul_numresultdone() {
	xjxnumresult_busy = false;
	ul_numresult_hide_busy_anim();
}

// prepare page for search update
function ul_numresultbusy() {
	xjxnumresult_busy = true;
	ul_numresult_show_busy_anim();
}

// show busy animation
function ul_numresult_show_busy_anim() {
	
	var el = document.getElementById('ul_busy_anim');
	if(el) el.style.display = 'block';
	
	var el2 = document.getElementById('xjxnumresult');
	if(el2) el2.style.display = 'none';
}

// show hide animation
function ul_numresult_hide_busy_anim() {
	
	var el = document.getElementById('ul_busy_anim');
	if(el) el.style.display = 'none';
	
	var el2 = document.getElementById('xjxnumresult');
	if(el2) el2.style.display = 'block';
}

// update numberresult by calling ajax
// ajax calls ul_numresultdone() after result is added to page
function ul_numresultupdate( number ) {
	
	if (number==-1) {
		document.getElementById("xjxnumresult").innerHTML = '&nbsp;';
	} else {
		xjxmsr++;
		window.setTimeout('ul_numresultsearchGo('+xjxmsr+')', 550);
	}
}

function ul_numresultsearchGo(i) {
	
	if (i==xjxmsr) {
		try {
			var ofld = document.getElementById('numsearchbox');
			var ofrm = ofld.form;
			var go = false;
			var filter = new Object;
			if (ofrm.query)   {
				filter.query     = ofrm.query.value;
				go = (go || filter.query !='')
			}
			if (ofrm.status)  {
				filter.status    = ofrm.status.value;
				go = (go || filter.status !='')
			}
			if (ofrm.relatie) {
				filter.relatie   = ofrm.relatie.value;
				go = (go || filter.relatie !='')
			}
			if (ofrm.datum)   {
				filter.datum     = ofrm.datum.value;
				go = (go || filter.datum !='')
			}
			if (ofrm.search)  {
				filter.search    = ofrm.search.value;
			}
			
			if (!go) {
				ul_numresultupdate(-1);
			} else {
				ul_numresultbusy();
				xajax_xGetCountNummersByQuery('xjxnumresult', filter );
			}
			
		} catch(e) {
			// nothing
			ul_numresultdone();
			
		}//endif
		
	}//endif
}

function ul_regresultsearchGo(i) {
	
	if (i==xjxmsr) {
		try {
			var ofld = document.getElementById('regsearchbox');
			var ofrm = ofld.form;
			var go = false;
			
			var filter = new Object;
			if (ofrm.query)      {
				filter.query     = ofrm.query.value;
				go = (go || filter.query !='')
			}
			if (ofrm.categorie)  {
				filter.categorie = ofrm.categorie.value;
				go = (go || filter.categorie !='')
			}
			if (ofrm.plaats)     {
				filter.plaats    = ofrm.plaats.value;
				go = (go || filter.plaats !='')
			}
			if (ofrm.search)     {
				filter.search    = ofrm.search.value;
			}
			if (!go) {
				ul_regresultupdate(-1);
			} else {
				ul_numresultbusy();
				xajax_xGetCountRegistratiesByFilter('xjxnumresult', filter );
			}
		
		} catch(e) {
			// nothing
			ul_numresultdone();
			
		}//endif
		
	}//endif
}

function ul_regresultupdate( ofrm ) {
	if (ofrm==-1) {
		document.getElementById("xjxnumresult").innerHTML = '&nbsp;';
	} else {
		xjxmsr++;
		window.setTimeout('ul_regresultsearchGo('+xjxmsr+')', 550);
	}
}

function InitSearchboxes() {
    var wordmatch = (txt_searchbox_words) ? txt_searchbox_words : 'Zoek...';
    var nummatch = (txt_searchbox_numbers) ? txt_searchbox_numbers : 'Nummer...';
	var sb = document.getElementById('topsearchbox');
	if (sb) {
		sb.onclick = function() {
			if (this.value == wordmatch) {
				this.value = '';
			}
		}
		sb.onblur = function() {
			if (this.value == '') {
				this.value = wordmatch;
			}
		}
	}//endif
	
	var sb = document.getElementById('regsearchbox');
	/*
	if (sb) {
		sb.onkeyup = function() {
			if (!xjxnumresult_busy ) {
				if (this.value.length >= 3 ) {
						ul_regresultupdate( this.form )
					} else {
						ul_regresultupdate( -1 );
					}
			}
		}
		
		// only add onchange if regsearchbox exists
		var sb = document.getElementById('selectstatus');
		if (sb) {
			sb.onchange = function() {
				if (!xjxnumresult_busy ) {
					ul_regresultupdate( this.form )
				}
			}
		}
		
		// only add onchange if regsearchbox exists
		var sb = document.getElementById('plaats');
		if (sb) {
			sb.onkeyup = function() {
				if (!xjxnumresult_busy ) {
					if (this.value.length >= 3 ) {
						ul_regresultupdate( this.form )
					} else {
						ul_regresultupdate( -1 );
					}
				}
			}
		}
	}
	*/
    
	var sbh = document.getElementById('numsearchboxhome');
	if (sbh) {
		if (sbh.value == '') {
			sbh.value = nummatch;
		}
		sbh.onclick = function() {
			if (this.value == nummatch) {
				this.value = '';
			}	
		}
		sbh.onblur = function() {
			if (this.value == '') {
				this.value = nummatch;
			}	
		}
	}
	
	var sb = document.getElementById('numsearchbox');
	if (sb) {
		if (sb.value == '') {
			sb.value = nummatch;
		}
		sb.onclick = function() {
			if (this.value == nummatch) {
				this.value = '';
			}	
		}
		sb.onblur = function() {
			if (this.value == '') {
				this.value = nummatch;
			}	
		}
		
		$("#numsearchbox").keypress( function (e) {
			// submit on enter
  			if(e.which==13 && this.value.length>0 ) {this.form.submit();return false;} 
  			//if the letter is not digit then display error and don't type anything
  			if( e.which!=8 && e.which!=0 && e.which!=118 && e.which!=86 && (e.which<48 || e.which>57)){ return false;}
		});
		/*
		sb.onkeyup = function() {
			if (!xjxnumresult_busy) {
				if (this.value.length >= 3 ) {
					ul_numresultupdate( this.value )
				} else {
					ul_numresultupdate( -1 );
				}
			}
		}
		
		// only add onchange to selectstatus if numsearchbox exists
		var sb = document.getElementById('selectstatus');
		if (sb) {
			sb.onchange = function() {
				if (!xjxnumresult_busy ) {
					ul_numresultupdate()
				}
			}
		}
		
		// only add onkeyup to relatie if numsearchbox exists
		var sb = document.getElementById('relatie');
		if (sb) {
			sb.onkeyup = function() {

				if (!xjxnumresult_busy ) {
					if (this.value.length >= 3 ) {
						ul_numresultupdate()
					} else {
						ul_numresultupdate( -1 );
					}
				}
			}
		}
		
		// only add onkeyup todatum if numsearchbox exists
		var sb = document.getElementById('datum');
		if (sb) {
			sb.onkeyup = function() {
				if (!xjxnumresult_busy ) {
					if (this.value.length >= 3 ) {
						ul_numresultupdate()
					} else {
						ul_numresultupdate( -1 );
					}
				}
			}
		}
	*/
	
	}//endif
	
	
	var sb = document.getElementById('searchboxresults');
	if (sb) {
		if (sb.value == '') {
			sb.value = wordmatch;
		}
		sb.onclick = function() {
			if (this.value == wordmatch) {
				this.value = '';
			}	
		}
		sb.onblur = function() {
			if (this.value == '') {
				this.value = wordmatch;
			}
		}
	}//endif

}//endfunc


var xjxrelpub_busy = false;

// tab update done, restore page
function ul_relpubdone() {
	xjxrelpub_busy = false;
}

// prepare page for tab update
function ul_relpubbusy() {
	xjxrelpub_busy = true;
	var x = document.getElementById('tabcontainr');
	var y = document.getElementById('tabsheetloading');
	x.style.display = 'none';
	y.style.display = 'block';
}

function ul_update_relevante_publicatie(year) {
	
	ul_relpubbusy();
	xajax_xUlUpdateRelevantePublicaties('relpubxjx',document.location, year);
	
	
}

function toggleExpandableDiv(ref) {
	var p = ref.parentNode;
	if(p) {
		if(p.className == 'expanded') {
			p.className = 'expandable';
		} else {
			p.className = 'expanded';
		}
	}
}

function submitrssform(elid,language) {
    var inputs = $('#'+elid+' :checkbox');
    var values = inputs.serialize();
    if (values) {
        xajax_xOpenRssLink(values,language);
    }
    
}

if (window.addEventListener) window.addEventListener("load", InitSearchboxes, false);
else if (window.attachEvent) window.attachEvent("onload", InitSearchboxes);