////////////////////////////////////////////////////////////////
//
// wScript.js 5.0.1
// erstellt durch Scholl Communications AG, 77694 Kehl, www.scholl.de
// erstellt mit Weblication Content Management Server, www.weblication.de
//
////////////////////////////////////////////////////////////////

////////////////////////////////////////////////////////////////
//
// Anzupassende Variablen:
//
// Optionen des standard Popupfensters.
var optionsPopup = "scrollbars=yes,resizable=yes,menubar=yes,location=no,width=600,height=480";
//
// Optionen des ersten Popupfensters.
var optionsPopup1 = "scrollbars=yes,resizable=yes,menubar=no,location=no,width=240,height=360";
//
// Optionen des zweiten Popupfensters.
var optionsPopup2 = "scrollbars=yes,resizable=yes,menubar=no,location=no,width=160,height=160";

////////////////////////////////////////////////////////////////

////////////////////////////////////////////////////////////////
//
// Beschreibung: Browsererkennung
//
////////////////////////////////////////////////////////////////

var ns  = (document.layers) ? 1 : 0;
var ie  = (document.all) ? 1 : 0;
var dom = (document.getElementById) ? 1 : 0;
var mac = (navigator.platform.indexOf("Mac") != -1) ? 1 : 0;

////////////////////////////////////////////////////////////////
//
// Beschreibung: Ruft eine neue Adresse auf
//
// Parameter: url    = Adresse, die aufgerufen werden soll
//
// Parameter: target = Zielfenster, in dem die Seite angezeigt werden soll
//
// Parameter: navid  = ID des Navigationspunktes
//
////////////////////////////////////////////////////////////////

function changeLocation(url, target, navid){

  changeLocationUrl(url, target, navid);

}


////////////////////////////////////////////////////////////////
//
// Beschreibung: Zeigt die Druckansicht an
//
////////////////////////////////////////////////////////////////

function wShowPrintview(){

  window.open(location.href);
}

////////////////////////////////////////////////////////////////
//
// Beschreibung: Druckt das aktuelle Dokument
//
////////////////////////////////////////////////////////////////

function wPrintDocument(){

  if(document.all && navigator.appVersion.substring(22,23)==4) {
    self.focus();
    var OLECMDID_PRINT = 6;
    var OLECMDEXECOPT_DONTPROMPTUSER = 2;
    var OLECMDEXECOPT_PROMPTUSER = 1;
    var WebBrowser = '<object id="WebBrowser1" width="0" height="0" classid="CLSID:8856F961-340A-11D0-A96B-00C04FD705A2"></object>';
    document.body.insertAdjacentHTML('beforeEnd',WebBrowser);
    WebBrowser1.ExecWB(OLECMDID_PRINT,OLECMDEXECOPT_DONTPROMPTUSER);
    WebBrowser1.outerHTML = '';
  }
  else{
    window.print();
  }
}

////////////////////////////////////////////////////////////////
//
// Beschreibung: Sendet das Formular
//
// Parameter: form = Formular, das gesendet werden soll.
//
////////////////////////////////////////////////////////////////

function submitForm(form, cacheMode){

  var cookieStr = "";

  if(checkForm(form) == false){
    return;
  }
  else{
    if(cacheMode == 1){
      cookieStr += "; path=/";
      document.cookie = cookieStr;
    }
    form.submit();
  }
}

//////////////////////////////////////////////////////////////////////////////
//
// Beschreibung: Prüft, ob die Plichtfelder im Formular ausgefüllt worden sind.
//
// Parameter: form = Formular, das geprüft werden soll.
//
//////////////////////////////////////////////////////////////////////////////

function checkForm(form){

 var messageEmail      = " enthält keine gültige Email Adresse!\n"; //erscheint wenn ein Pflichtfeld nicht ausgefüllt wurde

  var isObligation = /\|\w*o\w*$/i;  //Pflichtfeld, wenn Feldname am Schluss |o  enthaelt   (z.B.: "Strasse|o")
  var isEmail      = /\|\w*e\w*$/i;  //Emailfeld wenn Feldname am Schluss |e enthaelt       (z.B.: "eMail|e")
  var isCache      = /\|\w*c\w*$/i;  //Wird fuer weitere Formulare gespeichert am Schluss |c enthaelt       (z.B.: "eMail|c")
          //Pflicht- und Emailfeld, wenn am Schluss |oe oder |eo (z.B.: "eMail|eo")

  var checkEmail   = /.*\@.*\.\w+/i;
  var formElement;
  var formElementNameOrig;
  var elementStr;
  var alertStr = "";
  var radioButtonName = "";

  for(var i = 0; i <= form.elements.length - 1; i++){
    var formElement = form.elements[i];
    if(formElement){
      formElementNameOrig = formElement.name.replace(/\|\w+/, '');
      if(formElement.title == ""){
        elementStr = formElementNameOrig;
      }
      else{
        elementStr = formElement.title;
      }
      if(formElement.type == "text" || formElement.type == "textarea" || formElement.type == "select-one" ||  formElement.type == "password"){

        if(isObligation.test(formElement.name) == true){
          if(formElement.value == ""){
            alertStr += elementStr + messageObligation;
          }
        }
        if(isEmail.test(formElement.name) == true){
          if (checkEmail.test(formElement.value) == false){
            alertStr += elementStr + messageEmail;
          }
        }
        if(cacheMode == "1"){
          if(isCache.test(formElement.name) == true){
            if(formElement.value != ""){
              cookieStr += "wFc_" + formElementNameOrig + "=" + formElement.value + ":";
            }
          }
        }
      }
	    else if(formElement.type == "checkbox"){
        formElementNameOrig = formElement.name.replace(/\|\w+/, '');
        if(isObligation.test(formElement.name) == true){
          if(formElement.checked == false){
            alertStr += elementStr + messageObligation;
          }
        }
	    }
      else if(formElement.type == "radio"){
        if(radioButtonName != formElement.name){
          radioButtonName = formElement.name;
          var radioButtons = document.getElementsByName(formElement.name);
          formElementNameOrig = formElement.name.replace(/\|\w+/, '');
          if(isObligation.test(formElement.name) == true){
            var isChecked = false;
            for(j = 0; j < radioButtons.length; j++){
              if(radioButtons[j].checked == true){
                isChecked = true
              }
            }
            if(isChecked == false){
              alertStr += elementStr + messageObligation;
            }
          }
        }
	    }
    }
  }

  if(alertStr != ""){
    alert(alertStr);
    return false;
  }

  return true;

}

var BuchungsFenster = null;

function go(){

  if(BuchungsFenster == null ){
    BuchungsFenster = window.open("", "Buchungsanfrage", "toolbar=no, width=750, height=550, directories=no, status=yes, scrollbars=yes, resize=yes, menubar=no");
  }
  else{
   if(BuchungsFenster.closed ){
     BuchungsFenster = window.open("", "Buchungsanfrage", "toolbar=no, width=750, height=550, directories=no, status=yes, scrollbars=yes, resize=yes, menubar=no");
   }
   else{
     BuchungsFenster.focus();
   }
  }

  document.bkrequest.target="Buchungsanfrage";
  document.bkrequest.action="http://www.hoteldaten.com/koop-apis/wdba/dorequest.php";
  document.bkrequest.submit();
  document.bkrequest.action="go()";
  document.bkrequest.target="_self";
}
