function MM_reloadPage(init) {  //reloads the window if Nav4 resized
  if (init==true) with (navigator) {if ((appName=="Netscape")&&(parseInt(appVersion)==4)) {
    document.MM_pgW=innerWidth; document.MM_pgH=innerHeight; onresize=MM_reloadPage; }}
  else if (innerWidth!=document.MM_pgW || innerHeight!=document.MM_pgH) location.reload();
}
MM_reloadPage(true);

function MM_findObj(n, d) { //v4.01
  var p,i,x;  if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
    d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
  if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
  for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document);
  if(!x && d.getElementById) x=d.getElementById(n); return x;
}

function MM_preloadImages() { //v3.0
  var d=document; if(d.images){ if(!d.MM_p) d.MM_p=new Array();
    var i,j=d.MM_p.length,a=MM_preloadImages.arguments; for(i=0; i<a.length; i++)
    if (a[i].indexOf("#")!=0){ d.MM_p[j]=new Image; d.MM_p[j++].src=a[i];}}
}

function MM_swapImgRestore() { //v3.0
  var i,x,a=document.MM_sr; for(i=0;a&&i<a.length&&(x=a[i])&&x.oSrc;i++) x.src=x.oSrc;
}
function MM_swapImage() { //v3.0
  var i,j=0,x,a=MM_swapImage.arguments; document.MM_sr=new Array; for(i=0;i<(a.length-2);i+=3)
   if ((x=MM_findObj(a[i]))!=null){document.MM_sr[j++]=x; if(!x.oSrc) x.oSrc=x.src; x.src=a[i+2];}
}


// open window  
function openNewWin(mypage,myname,w,h,t,scr,m,st,loc,r){   
  var cfg;
	if(w) cfg = 'width=' + w + ',';
  if(h) cfg += 'height=' + h + ',';
  if(t) cfg += 'toolbar=' + t + ',';
  if(scr) cfg += 'scrollbars=' + scr + ',';
  if(m) cfg += 'menubar=' + m + ',';
  if(st) cfg += 'status=' + st + ',';
  if(loc) cfg += 'location=' + loc + ',';
  if(r) cfg += 'resizable=' + r;
  var popup =
    window.open(mypage,myname,cfg);
	 
  popup.focus();
}


/**
 * showHide(element, buttonElem, buttonVal) 
 * Function shows/hides an element by id while setting the value of another element 
 */
function showHide(element, buttonElem, buttonVal) { 
	var destObject = document.getElementById(element);  
	destObject.style.display = (destObject.style.display) ? '' : 'none';
	if(buttonElem) {
  		var destButton = document.getElementById(buttonElem);
	  	var buttonValArr = buttonVal.split('\|');
    	if(buttonElem && buttonValArr && destButton) {
	  		if (destButton.innerHTML == buttonValArr[1]) {
        		destButton.innerHTML = buttonValArr[0];
      		} else {
        		destButton.innerHTML = buttonValArr[1];
      		}
	  	}
	} 
}

/** 
 * toggleElement(element, toggleState)
 * 
 * Function shows/hides an element by id 
 *
 */
function toggleElement(element, toggleState) {
  var toggleObject = document.getElementById(element);  
  if(toggleState == 'auto') {
  	var toggleState = (toggleObject.style.display == 'none') ? true : 'none'; 
  } 
  if(toggleState == true) {
    toggleObject.style.display = '';
  } else {
    toggleObject.style.display = 'none';
  }
}

/**
 * returns the value of the selected radio field 
 */
function radio_selectedValue(radioObj) {
	var val = false;
	for( i = 0; i < radioObj.length; i++ ) {
		if( radioObj[i].checked == true ) {
			val = radioObj[i].value;
			break;
		}
	}
	return val;
} 

function isNumberKey(evt) {
	var charCode = (evt.which) ? evt.which : evt.keyCode;
	if (charCode > 31 && (charCode < 48 || charCode > 57))
		return false;
	return true;
}

function convertToEuroOutput(inputVal, dec, addTxt) {
	inputVal = parseFloat(inputVal);
	var retVal = inputVal.toFixed(dec);
	return retVal.toString() + addTxt;
}

/**
 * function to clear all form elements - incl. standard values!
 * @param oForm 	the form  
 */
function clearForm(oForm) {
	var elements = oForm.elements;    
	oForm.reset();
	for(i=0; i<elements.length; i++) {
		field_type = elements[i].type.toLowerCase();
		switch(field_type) {
			case "text": 
			case "password": 
			case "textarea":
			case "hidden":	
				elements[i].value = ""; 
				break;
		case "radio":
		case "checkbox":
			if (elements[i].checked) {
				elements[i].checked = false; 
			}
			break;
		case "select-one":
		case "select-multi":
			elements[i].selectedIndex = -1;
			break;
		default: 
			break;
		}
	}
}

/** ******************************************************* **
 **  RESERVATION FORM 
 ** ******************************************************* **/
function resToggleOptions() {
	var activated = radio_selectedValue(document.getElementsByName('res_type'));
	var allOpt = new Array('E', 'T'); /* new Array('C', 'M', 'T'); */
	for(i=0; i<allOpt.length; i++) {
		toggleElement('selector'+allOpt[i], (allOpt[i] == activated ? true : ''));
	}
}

