function resize(){  
var frame = document.getElementById("website");  
var htmlheight = document.body.parentNode.scrollheight;  
var windowheight = window.innerheight;  
if ( htmlheight < windowheight ) { document.body.style.height = windowheight + "px"; frame.style.height = windowheight + "px"; }  
else { document.body.style.height = htmlheight + "px"; frame.style.height = htmlheight + "px"; }  
}

/* Voor het resizen van een iframe (gallery-foto-list-admin-pagina) */
var message = "";
function adminOnLoad()
{
   if (document.getElementById('login_geduld'))
      document.getElementById('login_geduld').style.display='none';
   
   adminResizeDiv();
   
   if (message != "")
      alert(message);
    
    if (document.getElementById('ifrm'))
       autoIframe('ifrm');

}

function adminResizeDiv()
{
   if (document.getElementById('toolbar'))
   {
      var editorHoogte = document.body.clientHeight - document.getElementById('toolbar').scrollHeight - document.getElementById('mainbar').scrollHeight;
      document.getElementById('website').style.height =  editorHoogte;
      //window.alert('html');
      hide('login_geduld');
	  
   }else{

     //if ((window.innerHeight) && (window.innerHeight > 0)){
        var editorHoogte = document.body.clientHeight - document.getElementById('mainbar').scrollHeight;
        document.getElementById('website').style.height = editorHoogte;
        //window.alert(window.innerHeight);
      //}
    
   }
   
   //menuinit();
}

function hide(instanceName)
{
  // adminResizeIframe();
   if (document.getElementById(instanceName).style.visibility)
      document.getElementById(instanceName).style.visibility = 'hidden';
   else
      document.getElementById(instanceName).style.display = 'none';
}



function addEvent( obj, type, fn ) 
{
	window.alert('addEvent');
   if ( obj.attachEvent ) {
     obj['e'+type+fn] = fn;
     obj[type+fn] = function(){obj['e'+type+fn]( window.event );}
     obj.attachEvent( 'on'+type, obj[type+fn] );
   } else
     obj.addEventListener( type, fn, false );
 }

function removeEvent( obj, type, fn ) 
{
   if ( obj.detachEvent ) {
     obj.detachEvent( 'on'+type, obj[type+fn] );
     obj[type+fn] = null;
   } else
     obj.removeEventListener( type, fn, false );
}


function FCKeditor_OnComplete( editorInstance ) 
{
adminOnLoad();
}

function autoIframe(frameId)
{
  try
  {
    frame = document.getElementById(frameId);
    innerDoc = (frame.contentDocument) ? frame.contentDocument : frame.contentWindow.document;
    objToResize = (frame.style) ? frame.style : frame;
    objToResize.height = innerDoc.body.scrollHeight + 10;
  }
  catch(err)
  {
   window.status = err.message;
  }
}
function URLEncode (clearString) {
  var output = '';
  var x = 0;
  clearString = clearString.toString();
  var regex = /(^[a-zA-Z0-9_.]*)/;
  while (x < clearString.length) {
    var match = regex.exec(clearString.substr(x));
    if (match != null && match.length > 1 && match[1] != '') {
    	output += match[1];
      x += match[1].length;
    } else {
      if (clearString[x] == ' ')
        output += '+';
      else {
        var charCode = clearString.charCodeAt(x);
        var hexVal = charCode.toString(16);
        output += '%' + ( hexVal.length < 2 ? '0' : '' ) + hexVal.toUpperCase();
      }
      x++;
    }
  }
  return output;
}

/*
var realIFrame;
function xxxFCKeditor_OnComplete( editorInstance ) 
{ 
   realIFrame = editorInstance.EditorWindow._FCKEditingArea.IFrame; 
   realIFrame.style.marginWidth=0;  
   realIFrame.style.marginHeigth=0;
   realIFrame.style.scroll=0;
   realIFrame.style.overflow='hidden';
   realIFrame.style.background='transparent';
   realIFrame.style.height=realIFrame.contentWindow.document.body.scrollHeight;
   document.getElementById('FCKeditorContent___Frame').style.height=realIFrame.contentWindow.document.body.scrollHeight;
   document.getElementById('FCKeditorContent___Frame').onkeydown= function(){alert('')};
   realIFrame.onkeydown= function(){alert('')};
   realIFrame.contentWindow.onkeydown= function(){alert('')};

realIFrame.contentWindow.document.body.onkeydown = function(){alert('')};
document.getElementById('FCKeditorContent___Frame').contentWindow.document.body.onkeydown = function(){alert('')};

//   realIFrame.contentWindow.document.body.onload = resizeIframe;
//   realIFrame.contentWindow.document.body.onscroll = resizeIframe;
//alert(realIFrame.contentWindow.document.body.innerHTML);
//addEvent( document.getElementById('FCKeditorContent___Frame').contentWindow.document.body, "load", resizeIframe);
//addEvent( document.getElementById('FCKeditorContent___Frame').contentWindow.document.body, "keyup", resizeIframe);

//   realIFrame.contentWindow.document.body.addEventListener('scroll', resizeIframe, false);
//   realIFrame.contentWindow.document.body.onscroll = resizeIframe;
	     
//	     alert(realIFrame);
 //  realIFrame.style.height = realIFrame.document.body.scrollHeight;
//   iframeObject = realIFrame;
//   adminResizeIframe();
 //  alert(realIFrame.style.background);
 //resizeIframe();
}

function resizeIframe()
{

  // document.getElementById('FCKeditorContent___Frame').style.height=realIFrame.contentWindow.document.body.scrollHeight;
 //  document.getElementById('FCKeditorContent___Frame').contentWindow.document.body.addEventListener('keyup', resizeIframe, false);
alert('');	
}

function adminResizeIframe()
{
   if (iframeObject != undefined)
   {
      var theElement = iframeObject.document;
      if ( theElement.addEventListener ) 
	  {  //Firefox
	     theElement.addEventListener('keyup', resizeIframe, false);
	     theElement.addEventListener('click', resizeIframe, false);
	     theElement.addEventListener('scroll', resizeIframe, false);
	     theElement.addEventListener('resize', resizeIframe, false);
	  } 
	  else 
	  { //Internet Explorer
	     theElement.onkeyup = resizeIframe;
	     theElement.onclick = resizeIframe;
	     theElement.onscroll = resizeIframe;
	     theElement.onresize = resizeIframe;
	  }
      editor.style.height = iframeObject.document.body.scrollHeight;
      iframeObject = undefined;
   }
   return;
}
*/
function toCombo(selectName, buttonName){

	//****** Constructor ******************************************************
	//*************************************************************************

	//****** find & init Select element ******

	if(!selectName){
		window.status = "ComboBox Error: Select name required.";
		return false;
		}

	var selectObj = getFormElement(selectName, "select-one");

	if(selectObj == false){
		window.status = "ComboBox '"+selectName+"' Error: Select element not found.";
		return false;
	}

	this.selectObj = selectObj;

	//****** find & init Button element ******

	if(!buttonName){
		if(!document.createElement){
			window.status = "ComboBox '"+selectName+"' Error: Button name required.";
			return false;
		}
	}else{
		var buttonObj = getFormElement(buttonName, "button");

		if(buttonObj == false){
			if(!document.createElement){
				window.status = "ComboBox '"+selectName+"' Error: Button element not found.";
				return false;
			}
		}else{
			if(!document.createElement){
				this.buttonObj = buttonObj;
			}else{
				buttonObj.parentNode.removeChild(buttonObj);
			}
		}
	}

	//****** init Text element ******

	if(!document.createElement){
		this.textObj = new Object();
	}else{
		this.textObj = document.createElement("input");
		this.textObj.type = "text";

		if(this.selectObj.style.width) this.textObj.style.width = this.selectObj.style.width;
		if(this.selectObj.className)   this.textObj.className   = this.selectObj.className;

		this.textObj.autocomplete = "off";
	}

	//*********************************

	this.selectedIndex = -1;
	var handler = this;

	//*********************************

	if(!this.buttonObj){

		this.selectObj.onkeydown = function(e){
			var key = 0;

			if(!e) var e = window.event;

			if(e.keyCode){
				key = e.keyCode;
			}else{
				if(e.which) key = e.which;
			}

			switch(key){
                                case  9:	// TAB KEY
				case 33:	// PAGE UP
				case 34:	// PAGE DOWN
				case 35:	// END
				case 36:	// HOME
				case 37:	// CURSOR LEFT
				case 38:	// CURSOR UP
				case 39:	// CURSOR RIGHT
				case 40:	// CURSOR DOWN
				case 27:	// ESCAPE
					return;

				default:
					handler.textMode();
			}
		}
	}

	//*********************************

	if(!this.buttonObj){

		this.textObj.onkeyup = function(e){
			var key = 0;

			if(!e) var e = window.event;

			if(e.keyCode){
				key = e.keyCode;
			}else{
				if(e.which) key = e.which;
			}

			switch(key){
				case  8:	// BACKSPACE
				case 33:	// PAGE UP
				case 34:	// PAGE DOWN
				case 35:	// END
				case 36:	// HOME
				case 37:	// CURSOR LEFT
				case 38:	// CURSOR UP
				case 39:	// CURSOR RIGHT
				case 40:	// CURSOR DOWN
				case 45:	// INSERT
				case 46:	// DELETE
					return;

				case 27:	// ESCAPE
					handler.selectMode(true);
					return;

				case  9:	// TAB (?)
				case 13:	// RETURN
					handler.selectMode();
					return;

				default:
					for(var i = 0; i < handler.selectObj.options.length; i++){
						if(handler.selectObj.options[i].text.toLowerCase().indexOf(this.value.toLowerCase()) != 0) continue;

						handler.selectedIndex = i;

						if(this.value.length == handler.selectObj.options[i].text.length) return;

						var input  = this.value;

						if(!this.setSelectionRange && !this.createTextRange) return;

						this.value = handler.selectObj.options[i].text;

						if(this.setSelectionRange){
							this.setSelectionRange(input.length, this.value.length);
							return;
						}

						var range = this.createTextRange()
						range.moveStart("character", input.length)
						range.select()
						return;
					}

					handler.selectedIndex = -1;
					return;
			}
		}
	}

	//*********************************

	if(!this.buttonObj){

		this.textObj.onblur = function(event){
			handler.selectMode();
		}
	}

	//*********************************

	if(this.buttonObj){

		this.buttonObj.onclick = function(){

			handler.textObj.value = prompt("", (handler.selectObj.options[0].text == " ") ? "" : handler.selectObj.options[0].text);

			if(handler.textObj.value == null || handler.textObj.value == ""){
				handler.selectMode(true);
				return;
			}

			for(var i = 0; i < handler.selectObj.options.length; i++){
				if(handler.selectObj.options[i].text.toLowerCase().indexOf(handler.textObj.value.toLowerCase()) != 0) continue;

				handler.selectedIndex = i;

				if(handler.textObj.value.length == handler.selectObj.options[i].text.length){
					handler.selectMode();
					return;
				}
			}

			handler.selectedIndex = -1;
			handler.selectMode();
			return;
		}
	}

	//*********************************

	this.selectMode = function(cancel){

		if(!this.buttonObj){
			this.textObj.parentNode.insertBefore(this.selectObj, this.textObj.nextSibling);
			this.textObj.parentNode.removeChild(this.textObj);
		}

		if(!cancel){
			if(this.selectedIndex == -1){
				this.selectObj.options[0].value = this.textObj.value;
				this.selectObj.options[0].text  = (this.textObj.value == "") ? " " : this.textObj.value;

				this.selectObj.selectedIndex = 0;
			}else{
				this.selectObj.selectedIndex = this.selectedIndex;
			}

			this.textObj.value = "";
		}

		this.selectObj.focus();
	}

	//*********************************

	this.textMode = function(cancel){

		this.selectObj.parentNode.insertBefore(this.textObj, this.selectObj.nextSibling);
		this.selectObj.parentNode.removeChild(this.selectObj);

		this.selectedIndex = this.selectObj.selectedIndex;

		this.textObj.value = (this.selectObj.options[0].text == " ") ? "" : this.selectObj.options[0].text;

		this.textObj.select();
	}
}
function getFormElement(name, type){

	if(document.getElementsByName){

		var elements = document.getElementsByName(name);

		if(!type) return elements[0];

		for(var e = 0; e < elements.length; e++){
			if(elements[e].type == type) return elements[e];
		}

		return false;
	}

	for(var f = 0; f < document.forms.length; f++){
		for(var e = 0; e < document.forms[f].elements.length; e++){

			if(document.forms[f].elements[e].name != name) continue;

			if(!type) return document.forms[f].elements[e];

			if(document.forms[f].elements[e].type == type) return document.forms[f].elements[e];
		}
	}
}

/*
  Add function to load on page load
  Example:	icms_addLoadEvent(nameOfSomeFunctionToRunOnPageLoad); 
*/
function icms_addLoadEvent(func)
{ 
   var oldonload = window.onload;
   if (typeof window.onload != 'function') 
   {
	  window.onload = func;
   } 
   else 
   { 
      window.onload = function() { if (oldonload) {  oldonload(); } func(); } 
   } 
}  