function windowOpen(href, width, height, scrollbar)
{
	if (width == '' && height == '') {
		window.open(href, '_blank', 'toolbar=no,location=no,status=yes,menubar=no,personalbar=no,scrollbars=yes,resizable=yes,screenx=50,left=50,screenY=50,top=50');
	} 
	else if (scrollbar != '') {
		window.open(href, '_blank', 'toolbar=no,location=no,status=no,menubar=no,personalbar=no,scrollbars=' + scrollbar + ',width=' + width + ',height=' + height + ',resizable=yes,screenx=50,left=50,screenY=50,top=50')
	}
	else {
		window.open(href, '_blank', 'toolbar=no,location=no,status=no,menubar=no,personalbar=no,scrollbars=no,width=' + width + ',height=' + height + ',resizable=yes,screenx=50,left=50,screenY=50,top=50')
	}
}

function del_confirm(msg, url) {
  if(confirm(msg)) {
  	location.href = url;
  }
}

function loginFocus() {
if (document.forms[0].name.value.length > 0)
	document.forms[0].password.focus();
else
	document.forms[0].name.focus();
}



function CheckMandatoryFields(oForm) {


	var i, j, sElementName, sElementType, bCheck;
	var bError = 0;
	var bOr = 0;
	var flag = 0;
	var checkboxG1 = 0;
	var flag2 = 0;
	var checkboxG2 = 0;
	var bgColor = "";
	var bDependingMandatory = false;
	var bDependingMandatoryEmpty = true;
	
	if (oForm.contact_password_mf) {
		
		var pw1 = oForm.contact_password_mf.value;
		var pw2 = oForm.contact_password_confirm_mf.value;
		
		if (pw1 != pw2) {
			alert("Die Passwort-Eingabe stimmt nicht ueberein.")
			//document.registrationform.contact_password_mf.style.backgroundColor = bgColor
			//document.registrationform.contact_password_confirm_mf.style.backgroundColor = bgColor
			return false;
		}
	}
	
	if(document.getElementById("checkAnmeldungValbella1") && document.getElementById("checkAnmeldungValbella1").checked || document.getElementById("checkAnmeldungValbella2") && document.getElementById("checkAnmeldungValbella2").checked) {
		for (i = 0; i < oForm.elements.length; i++) {
			oElement = oForm.elements[i];
			sElementName = oElement.name;
			if (sElementName.substr(sElementName.length - 3, 3) == "_mc") {
				bDependingMandatory = true;
				if(oElement.value != "")
				{
					bDependingMandatoryEmpty = false;
				}
			}
		}
	}
	
	if (bDependingMandatory && bDependingMandatoryEmpty) {
		bError = 4;
	}
	
	for (i = 0; i < oForm.elements.length; i++) {
	
		oElement = oForm.elements[i];
		sElementName = oElement.name;
		sElementType = oElement.type;
		
		if (sElementName != "") {
			
			if (sElementName.length > 3) {
			
						
				if (sElementName.substr(sElementName.length - 3, 3) == "_mf") {
					
					
					switch (sElementType) {
						case "text":
							if (
								(oElement.value == "") || 
								((oElement.className.indexOf("numeric") > -1) && !isNumeric(oElement.value)) ||
								((oElement.className.indexOf("exactlength") > -1) && !checkExactLength(oElement))
								) {
								bError = 1;
								oElement.style.backgroundColor = bgColor;
							}
							else {
								oElement.style.backgroundColor = "";
							}
							break;
							
							
						case "password":
							if (oElement.value == "") {
								bError = 1;
								oElement.style.backgroundColor = bgColor;
							}
							else {
								oElement.style.backgroundColor = "";
							}
							break;
						
																			
						case "textarea":
						
							if (oElement.value == "") {
								bError = 1;
								oElement.style.backgroundColor = bgColor;
							}
							else {
								oElement.style.backgroundColor = "";
							}
							break;

						case "checkbox":
							
							if (oElement.checked == false) {
								bError = 3;
								oElement.style.backgroundColor = bgColor;
								if (sElementName == "checkteilnahmebedingungen_mf") {
									alert("Bitte akzeptieren Sie die Datenschutzbestimmungen und Teilnahmebedingungen.");
								}
							}
							else {
								oElement.style.backgroundColor = "";
							}
							break;
							
						
						case "radio":
												
							
				            bCheck = 0;
				             
							for (j = 0; j < oForm[sElementName].length; j++) {  
							 	
								if (oForm[sElementName][j].checked == true) bCheck = 1;
							}         
							  
			                  
			             	if (bCheck == 0) {
								bError = 1;
								oElement.style.border = "2px solid #ffffff";
								oElement.style.backgroundColor = bgColor;
							}
							else {
								oElement.style.backgroundColor = "";
							}
							
							break;
							
													
						case "select-one":
						
							if (oElement[oElement.selectedIndex].value == "" || oElement[oElement.selectedIndex].value == "null") {
								bError = 1;
								oElement.style.backgroundColor = bgColor;
							}
							else {
								oElement.style.backgroundColor = "";
							}
							break;
							
							
						case "select-multiple":

							bCheck = 0;

							for (j = 0; j < oElement.options.length; j++) {
							
								if (oElement.options[j].selected) {
									bCheck++;
								}
							}

							if (bCheck == 0) {
								bError = 1;
								oElement.style.backgroundColor = bgColor;
							}
							else {
								oElement.style.backgroundColor = "";
							}
							break;
						
						case "file":
							if (oElement.value == "") {
								bError = 1;
								oElement.style.backgroundColor = bgColor;
							}
							else {
								oElement.style.backgroundColor = "";
							}
							break;
					}
				}
				else {
				
					if (sElementName.substr(sElementName.length - 3, 3) == "_or") {
						
						switch (sElementType) {
							case "text":
								if (oElement.value == "") {
									bOr++;
									oElement.style.backgroundColor = bgColor;
								}
								else {
									oElement.style.backgroundColor = "";
								}
							break;
								
						}
						
						
						if (bOr > 1) {
							bOr = 1;
						}
					}
				}
				
				if (sElementName.indexOf('contact_checkboxG1') != -1) {
					
					checkboxG1 = 1;
						
						if (oElement.checked == true) {
							
							flag = 1;
		
						}				
				
				}
				
				if (sElementName.indexOf('contact_checkboxG2') != -1) {
					
					checkboxG2 = 1;
						
						if (oElement.checked == true) {
							
							flag2 = 1;
		
						}				
				
				}
				
				if (sElementName.indexOf('contact_checkboxG3') != -1) {
					
					checkboxG2 = 1;
						
						if (oElement.checked == true) {
							
							flag2 = 1;
		
						}				
				
				}
				
				if (sElementName.indexOf('mail_') != -1 && oElement.value != "") {
					
					if(checkEmail(oElement.value) == false){
						bError = 2;
						oElement.style.backgroundColor = bgColor;
					}
					else {
						oElement.style.backgroundColor = "#ffffff";
					}
				}
				
				if (sElementName.substr(sElementName.length - 3, 3) == "_ch") {
					
					switch (sElementType) {
							case "checkbox":
								if (oElement.checked == false) {
								bError = 3;
								oElement.style.backgroundColor = bgColor;
							}
							break;
					}
				}
				
				if (sElementName.indexOf('bemerkungen_500') != -1) {
					if (oElement.value.length > 500) {
						bError = 5;
						oElement.style.backgroundColor = bgColor;
					}
					else {
						oElement.style.backgroundColor = "#ffffff";
					}
				}
				
								
			}
		}
	}

	
	if (checkboxG2 == 1 && flag2 == 0){
	
		bError = 1;
		oElement.style.backgroundColor = bgColor;

	}
	
	if (checkboxG1 == 1 && flag == 0){
	
		bError = 1;
		oElement.style.backgroundColor = bgColor;

	}
	
	if (bError == 0 && bOr == 0) {
		var submitButton = document.getElementById('submitButton');
		if(submitButton){
			submitButton.disabled = 'disabled';
		}
		return true;
	}
	if (bError == 1) {
		alert("Bitte fuellen Sie die markierten Felder aus.");
		return false;
	}
	if (bError == 2) {
		alert("Bitte geben Sie eine gueltige E-Mail Adresse ein.");
		return false;
	}
	if (bError == 3) {
		alert("Bitte fuellen Sie die markierten Felder aus.");
		return false;
	}
	if (bError == 4) {
		alert("Eines der Felder \"Doppelzimmer\", \"Einzelzimmer\" oder \"Wohneinheit fuer 4 Personen\" muss ausgefuellt werden.");
		return false;
	}
	if (bError == 5) {
		alert("Das Feld Bemerkungen darf hoechstens 500 Zeichen enthalten.");
		return false;
	}
	if (bOr == 1) {
		alert("Bitte fuellen Sie eines der markierten Felder aus.");
		return false;
	}
	
	
	
}

function isNumeric(sValue) {

	var sNumbers = "01234567890";
	for (var iCharCount = 0; iCharCount < sValue.length; ++iCharCount) {
	
		if (sNumbers.indexOf(sValue.charAt(iCharCount)) == -1) {
		
			return false;
		}
	}
	return true;
}

function checkExactLength(oField) {

	var iFieldLength = parseInt(oField.getAttribute("maxlength"), 10);
	if (iFieldLength && (oField.value.length != iFieldLength)) {
	
		return false;
	}
	return true;
}

function checkEmail(emailAddress) {
	
	var re = /^(([^<>()[\]\\.,;:@\"]+(\.[^<>()[\]\\.,;:@\"]+)*)|(\".+\"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/
	return re.test(emailAddress);
}


function applyLoginMode(sFormName) {
	var aRadio=document.forms[sFormName].elements["login_mode"];
	for (var i=0; i<aRadio.length; i++) {
		if(aRadio[i].checked) {
			document.forms[sFormName].elements["name"].value = aRadio[i].value+"\\"+
				document.forms[sFormName].elements["uid"].value;
			
		}
	}
	return true;
}

function openNoteLine(nbr) {
	var contentStyle = document.getElementById(nbr).style;
	if(contentStyle.display == 'none') {
		contentStyle.display = 'block';
	} else {
		contentStyle.display = 'none';
	}
}

function submitDelete(oForm){
	var doIt = confirm('Wollen Sie dieses Objekt wirklich loeschen?');
	if(doIt){
		oForm.edit.value = 'delete';
		oForm.submit();
	}
}

function calcWikiHeight(){
	var obj = document.getElementById("wikiContent");
	if(obj){
		winH = 960;
		if (parseInt(navigator.appVersion)>3) {
	 		if (navigator.appName.indexOf("Microsoft")!=-1) {
	  			winH = document.body.offsetHeight;
			}else{
	  			winH = window.innerHeight;
			}
		}
		var objH = winH - 211;
		obj.style.height = objH + "px";
	}
	
}

sfHover = function() {
	if(document.getElementById("nav")){
		var sfEls = document.getElementById("nav").getElementsByTagName("LI");
		for (var i=0; i<sfEls.length; i++) {
			sfEls[i].onmouseover=function() {
				this.className+=" sfhover";
			}
			sfEls[i].onmouseout=function() {
				this.className=this.className.replace(new RegExp(" sfhover\\b"), "");
			}
		}
	}
}

if (window.attachEvent) window.attachEvent("onload", sfHover);


function AC_AddExtension(src, ext)
{
  if (src.indexOf('?') != -1)
    return src.replace(/\?/, ext+'?'); 
  else
    return src + ext;
}

function AC_Generateobj(objAttrs, params, embedAttrs) 
{ 
  var str = '<object ';
  for (var i in objAttrs)
    str += i + '="' + objAttrs[i] + '" ';
  str += '>';
  for (var i in params)
    str += '<param name="' + i + '" value="' + params[i] + '" /> ';
  str += '<embed ';
  for (var i in embedAttrs)
    str += i + '="' + embedAttrs[i] + '" ';
  str += ' ></embed></object>';

  document.write(str);
}

function AC_FL_RunContent(){
  var ret = 
    AC_GetArgs
    (  arguments, ".swf", "movie", "clsid:d27cdb6e-ae6d-11cf-96b8-444553540000"
     , "application/x-shockwave-flash"
    );
  AC_Generateobj(ret.objAttrs, ret.params, ret.embedAttrs);
}

function AC_SW_RunContent(){
  var ret = 
    AC_GetArgs
    (  arguments, ".dcr", "src", "clsid:166B1BCA-3F9C-11CF-8075-444553540000"
     , null
    );
  AC_Generateobj(ret.objAttrs, ret.params, ret.embedAttrs);
}

function AC_GetArgs(args, ext, srcParamName, classid, mimeType){
  var ret = new Object();
  ret.embedAttrs = new Object();
  ret.params = new Object();
  ret.objAttrs = new Object();
  for (var i=0; i < args.length; i=i+2){
    var currArg = args[i].toLowerCase();    

    switch (currArg){	
      case "classid":
        break;
      case "pluginspage":
        ret.embedAttrs[args[i]] = args[i+1];
        break;
      case "src":
      case "movie":	
        args[i+1] = AC_AddExtension(args[i+1], ext);
        ret.embedAttrs["src"] = args[i+1];
        ret.params[srcParamName] = args[i+1];
        break;
      case "onafterupdate":
      case "onbeforeupdate":
      case "onblur":
      case "oncellchange":
      case "onclick":
      case "ondblClick":
      case "ondrag":
      case "ondragend":
      case "ondragenter":
      case "ondragleave":
      case "ondragover":
      case "ondrop":
      case "onfinish":
      case "onfocus":
      case "onhelp":
      case "onmousedown":
      case "onmouseup":
      case "onmouseover":
      case "onmousemove":
      case "onmouseout":
      case "onkeypress":
      case "onkeydown":
      case "onkeyup":
      case "onload":
      case "onlosecapture":
      case "onpropertychange":
      case "onreadystatechange":
      case "onrowsdelete":
      case "onrowenter":
      case "onrowexit":
      case "onrowsinserted":
      case "onstart":
      case "onscroll":
      case "onbeforeeditfocus":
      case "onactivate":
      case "onbeforedeactivate":
      case "ondeactivate":
      case "type":
      case "codebase":
        ret.objAttrs[args[i]] = args[i+1];
        break;
      case "width":
      case "height":
      case "align":
      case "vspace": 
      case "hspace":
      case "class":
      case "title":
      case "accesskey":
      case "name":
      case "id":
      case "tabindex":
        ret.embedAttrs[args[i]] = ret.objAttrs[args[i]] = args[i+1];
        break;
      default:
        ret.embedAttrs[args[i]] = ret.params[args[i]] = args[i+1];
    }
  }
  ret.objAttrs["classid"] = classid;
  if (mimeType) ret.embedAttrs["type"] = mimeType;
  return ret;
}