
/*
Created by Randy Bennet http://home.thezone.net/~rbennett/utility/javahead.htm
Featured on JavaScript Kit (http://javascriptkit.com)
For this and over 400+ free scripts, visit http://javascriptkit.com
*/

var privateKey = "6LeRCAIAAAAAAM9_u6PkVicUmCQJUWZ8zhtH0a5d";
var lang = "de";


function captchaVerify(challenge, response)
{
  var xmlHttp = null;
  var validity = false;

  // Mozilla, Opera, Safari sowie Internet Explorer 7
  if (typeof XMLHttpRequest != "undefined") {
    xmlHttp = new XMLHttpRequest();
  }
  if (!xmlHttp) {
    // Internet Explorer 6 und älter
    try {
        xmlHttp  = new ActiveXObject("Msxml2.XMLHTTP");
    } catch(e) {
        try {
            xmlHttp  = new ActiveXObject("Microsoft.XMLHTTP");
        } catch(e) {
            xmlHttp  = null;
        }
    }
  }
  if (xmlHttp) {
    xmlHttp.open("GET", 
                 "/cgi-local/verify_captcha.pl?" + 
                 "response=" + response + "&" + "challenge=" + challenge, 
                 false);

    xmlHttp.onreadystatechange = function () {
      if (xmlHttp.readyState == 4) {
        //alert(xmlHttp.responseText);
        ;
      }
    };

    xmlHttp.send(null);

    validity = (xmlHttp.responseText == '1');
  }

  return validity;
}

function captchaMsg(errorMsg)
{
  if (errorMsg == "") {
    document.getElementById("captchaLbl").style.color = "black";
  }
  else {
    document.getElementById("captchaLbl").style.color = "red";
    alert(errorMsg);
  }
}

function captchaInit()
{
  Recaptcha.create(privateKey, "captchaLoc", 
                   {
                     theme: "clean",
                     lang: lang
                   });
}

function captchaValidate()
{
  var challenge = Recaptcha.get_challenge();
  var response = Recaptcha.get_response();

  if (challenge == "" || response == "") {
    captchaMsg("Geben Sie bitte die Wörter aus dem Bild ein!");
    captchaInit();
    return false;
  }

  if (!captchaVerify(challenge, response)) {
    captchaMsg("Die Eingabe ist nicht korrekt! Versuchen Sie es bitte erneut.");
    captchaInit();
    return false;
  }

  return true;
}

// setVariables() + function checkLocation()
// Autoscroll der linken Navigation
function setVariables() {
  if (document.layers) {
    v=".top=";
    dS="document.";
    sD="";
    y="window.pageYOffset";
  }

  else if (document.all){
    v=".pixelTop=";
    dS="";
    sD=".style";
    y="document.body.scrollTop";
  }

  else if (document.getElementById){
    y="window.pageYOffset";
  }
}


function checkLocation() {
  object="menue2";
    //alert("appName: " + navigator.appName + "\nappVersion: " + navigator.appVersion);

  if (document.layers) {
      yy=eval(y)+77;
      //alert("layers" + navigator.appName);
  }

  else if (document.all){
      yy=eval(y)+79;
      //alert("document.all" + navigator.appName);
  }

  else if (document.getElementById){

        //Netscape + Firefox
        if (navigator.appName=="Netscape")
        {yy=eval(y)+78;
        //alert("Netscape " + navigator.appName);
        } 

        else if (navigator.appName!="Microsoft Internet Explorer")
        {yy=eval(y)+80;
        //alert("MS IE " + navigator.appName);
        } 
  }
  
  if (document.getElementById)
    document.getElementById("menue2").style.top=yy
  else
    eval(dS+object+sD+v+yy)
    setTimeout("checkLocation()",10);
}


// Farbaenderung des aktuellen Menuepunkts in der Navigation
function changecolor(id) {
  var current_tag=window.document.getElementsByTagName("a");
  var length=current_tag.length;
  var new_current_tag=window.document.getElementById(id);

  for (i=0; i<current_tag.length; i++ )
  {
    var attr_class=current_tag[i].className;

    var class_before=attr_class.substr(0,7); //current
    var class_sep=attr_class.substr(7,1);    //- od leerzeichen
    var class_rest=attr_class.substr(8,100);    //- od leerzeichen

    if (class_before=="current" && class_sep==" ")
    {
        current_tag[i].className=attr_class.substr(8,100);
        //alert('auf blau gesetzt');
    }
  }
  new_current_tag.className="current " + new_current_tag.className;
  //alert('auf rot gesetzt');
}



// Animation der SVG-Diagramme
function showText(click_evt,id,prop)
{
  var objekt=click_evt.target.ownerDocument.getElementById(id).style;
  
  if(prop=="visibility")
  {
    if(objekt.getPropertyValue(prop)=="visible")
    objekt.setProperty(prop,"hidden");
    else objekt.setProperty(prop,"visible");
  }

  if(prop=="fill")
  {
    if(objekt.getPropertyValue(prop)=="#BF0000")
    objekt.setProperty(prop,"white");
    else objekt.setProperty(prop,"#BF0000");
  }
}


// Formular pruefen
function chkForm()
{
  captchaMsg("");

  if(document.KontaktForm.vorname.value == "")  {
    document.getElementById("vorname").style.color = "red";
    alert("Bitte Vornamen eingeben!");
    document.KontaktForm.vorname.focus();
    return false;
  }
  else {
    document.getElementById("vorname").style.color = "black";
  }

  if(document.KontaktForm.name.value == "")  {
    document.getElementById("name").style.color = "red";
    alert("Bitte Namen eingeben!");
    document.KontaktForm.name.focus();
    return false;
  }
  else {
    document.getElementById("name").style.color = "black";
  }

  if(document.KontaktForm.anschrift.value == "") {
    document.getElementById("anschrift").style.color = "red";
    alert("Bitte Anschrift eingeben!");
    document.KontaktForm.anschrift.focus();
    return false;
  }
  else {
    document.getElementById("anschrift").style.color = "black";
  }

  if(document.KontaktForm.plz.value == "") {
    document.getElementById("plz").style.color = "red";
    alert("Bitte Postleitzahl eingeben!");
    document.KontaktForm.plz.focus();
    return false;
  }
  else {
    document.getElementById("plz").style.color = "black";
  }

  if(document.KontaktForm.ort.value == "") {
    document.getElementById("ort").style.color = "red";
    alert("Bitte Ort eingeben!");
    document.KontaktForm.ort.focus();
    return false;
  }
  else {
    document.getElementById("ort").style.color = "black";
  }
  if(document.KontaktForm.email.value == "") {
    document.getElementById("email").style.color = "red";
    alert("Bitte E-Mail-Adresse eingeben!");
    document.KontaktForm.email.focus();
    return false;
  }
  else {
    document.getElementById("email").style.color = "black";
  }
  if(document.KontaktForm.email.value.indexOf('@') == -1) {
    document.getElementById("email").style.color = "red";
    alert("Ungueltige E-Mail-Adresse!");
    document.KontaktForm.email.focus();
    return false;
  }
  else {
    document.getElementById("email").style.color = "black";
  }

  return captchaValidate();
}

