// (c) by GlobalBases.com GmbH 20.11.2009

var startPage = true;
var kennung = "";

$(window).load(function () {
  // Click auf Startpage
  $("div#tgcl a").click(clickTag);
  $("div#dlogo").click(clickLogo);
  // Click auf Hauptmenue
  $("a.topmenu").click(clickTopMenu);
  $("a.submenu").click(clickSubMenu);
  // load Flash
  loadFlash();
  startForm("kform","mail_email");
  // Deeplink auswerten
  if( deeplink.length > 0 ) {
    gotoTopMenu();
    $("#dflash").css("display","block");
    $("a#"+deeplink).trigger("click");
  }
});

function clickTag(eventObject) {
  gotoTopMenu();
  $("#dflash").css("display","block");
  startFlash($(this).attr("id"));
}

function clickLogo(eventObject) {
  if( startPage ) { 
    gotoTopMenu(); 
  } else {
    gotoStartPage(); 
  }
}

function clickTopMenu(eo) {
  gotoTopMenu();
  $("#d"+$(this).attr("id")).css("display","block");
  $("a.topmenu").removeClass("seltopmenu");
  $(this).addClass("seltopmenu");
  $("a.submenu").removeClass("selsubmenu");
  $("div#d"+$(this).attr("id")+" a.submenu:first-child").addClass("selsubmenu");
  switch($(this).attr("id")) {
    case "profil"       : $("#lcolbottom").css("background-image","url(images/boden_weiss.gif)");
                          break;
    case "leistung"     : $("#dflash").css("display","block");
                          break;
    case "anwendung"    : $("#dflash").css("display","block");
                          break;
    case "branchen"     : $("#dflash").css("display","block");
                          break;
    case "kontakt"      : $("#lcolbottom").css("background-image","url(images/boden_weiss.gif)");
                          break;
    case "impressum"    : $("#lcolbottom").css("background-image","url(images/boden_weiss.gif)");
                          break;
    case "datenschutz"  : $("#lcolbottom").css("background-image","url(images/boden_weiss.gif)");
                          break;
  }
  startFlash($("div#d"+$(this).attr("id")+" a.submenu:first-child").attr("id"));
}

function clickSubMenu(eo) {
  switch($(this).attr("id")) {
    case "leis11" 	: $("#dflash").css("display","none");
			  $("#dheritage").css("display","block");
			  $("#lcolbottom").css("background-image","url(images/boden_weiss.gif)");
                          break;
    default 		: $("#dflash").css("display","block");
                          startFlash($(this).attr("id"));
			  break;
  }
  $("a.submenu").removeClass("selsubmenu");
  $(this).addClass("selsubmenu");
}

function loadFlash() {
  var flashvars = {
    configFile: "/daten/config01.xml"
  };
  var params = {
    menu: "false",
    allowFullScreen: "false",
    quality: "high",
    bgcolor: "#000000"
  };
  var attributes = {
    id: "dflash"
  };
  swfobject.embedSWF("flash/3dstudioplayer.swf", "dflash", "640", "701", "8","",flashvars, params, attributes);
}

function startFlash(wert) {
  kennung = wert;
  if( wert ) {
    var flash = null;
    //alert(navigator.userAgent);
    if(navigator.userAgent.indexOf("MSIE 6.0") != -1) {
      flash = document.getElementbyId("dflash");
    } else {
      flash = document.dflash;
    }
    if( flash != null ) {
      if( flash.setKennung ) {
        flash.setKennung(wert);
      }
    }
  }
}

function getKennung(wert) {
  return kennung;
}

function gotoTopMenu() {
  startPage = false;
  $("#tgcl").css("visibility","hidden");
  $("#dlogo").css("top","1px");
  $("#rcoltop").css("display","block");
  $("#rcolbottom").css("background-image","url(images/boden_menu.gif)");
  elementsOff();
}

function gotoStartPage() {
  startPage = true;
  $("#tgcl").css("visibility","visible");
  $("#dlogo").css("top","468px");
  $("#rcoltop").css("display","none");
  $("#rcolbottom").css("background-image","url(images/boden_logo.jpg)");
  elementsOff();
}

function elementsOff() {
  $("#dprofil").css("display","none");
  $("#dleistung").css("display","none");
  $("#dheritage").css("display","none");
  $("#danwendung").css("display","none");
  $("#dbranchen").css("display","none");
  $("#dkontakt").css("display","none");
  $("#ddatenschutz").css("display","none");
  $("#dimpressum").css("display","none");
  $("#dflash").css("display","none");
  $("#lcolbottom").css("background-image","none");
}


// Kontakt Form

var dform = new Object();
var activ = "";
var activform = "";


function startForm(formId,emailId) {
  if( !dform[formId] ) {
    dform[formId] = new Object();
  }
  $("#"+formId+" .filled").each(function(){
    dform[formId][$(this).attr('id')] = new Array($(this).attr('value'),"","empty");
    $(this).removeClass();
    $(this).addClass("empty");
    $(this).focus(function(){
      if( activ.length > 0 ) {
        if( $.trim($("#"+activform+" #"+activ).attr('value')).length > 0 || $("#"+activform+" input:checked#"+activ+" ").length > 0 ) {
          if( $("#"+activform+" #"+activ).attr('type') == "checkbox" ) {
            dform[activform][activ][1] = dform[activform][activ][0];
          } else {
            dform[activform][activ][1] = $("#"+activform+" #"+activ).attr('value');
          }
          dform[activform][activ][2] = "filled";
        } else {
          dform[activform][activ][1] = "";
          dform[activform][activ][2] = "empty";
          $("#"+activform+" #"+activ).attr('value',dform[activform][activ][0]);
        }
      }
      $.each(dform, function(x,fi) {
        $.each(fi, function(i,n) {
          $("#"+x+" #"+i).removeClass();
          $("#"+x+" #"+i).addClass(n[2]);
        });
      });
      $(this).removeClass();
      $(this).addClass("filled");
      if( dform[formId][$(this).attr('id')][1].length < 1 ) {
        $(this).attr('value',"");
      } 
      activ = $(this).attr('id');
      activform = formId;
    });
  });
  $("#kformsend").click( function() {
    sendForm("kform");
  });
}

function sendForm(formId) {
  if( activ.length > 0 ) {
    if( $.trim($("#"+activform+" #"+activ).attr('value')).length > 0 || $("#"+activform+" input:checked#"+activ+" ").length > 0 ) {
      if( $("#"+activform+" #"+activ).attr('type') == "checkbox" ) {
        dform[activform][activ][1] = dform[activform][activ][0];
      } else {
        dform[activform][activ][1] = $("#"+activform+" #"+activ).attr('value');
      }
      dform[activform][activ][2] = "filled";
    } else {
      dform[activform][activ][1] = "";
      dform[activform][activ][2] = "empty";
      $("#"+activform+" #"+activ).attr('value',dform[activform][activ][0]);
    }
  }
  $.each(dform, function(x,fi) {
    $.each(fi, function(i,n) {
      $("#"+x+" #"+i).removeClass();
      $("#"+x+" #"+i).addClass(n[2]);
    });
  });
  activ = "";
  activform = "";

  var tests = new Object();
  $.each($("#"+formId+" #req_"+formId).attr('value').split(","), function(n,v){
    var va = v.split(":");
    tests[va[0]] = va;
  });

  var error = false;
  var ivar = "";
  $.each(dform[formId], function(n,v){
    if( tests[n] ) {
      if( tests[n][1] == "text" ) {
        if( $.trim(v[1]).length < 1 ) { 
          error = true;
          $("#"+formId+" #"+n).removeClass();
          $("#"+formId+" #"+n).addClass("error");
        } 
      } 
      if( tests[n][1] == "email" ) {
        reg  = /^[_\.0-9a-zA-Z-]+@([0-9a-zA-Z][0-9a-zA-Z-]+\.)+[a-zA-Z]{2,5}$/;
        if( !reg.exec($.trim(v[1])) ) {
          error = true;
          $("#"+formId+" #"+n).removeClass();
          $("#"+formId+" #"+n).addClass("error");
        }
      } 
    }
    ivar = ivar+"&"+n+"="+v[1];
  });

  if( error == false ) {
    var pd = ivar;
    var t = $.ajax({
       type: "POST",
       url: "kform.php",
       data: pd,
       cache: false,
       async: false
    }).responseText; 
    $("#"+formId).replaceWith("<div id='"+formId+"'>"+t+"</div>");
  }
}

