/***** Alle Rechte vorbehalten: Rainer Wagener, wagener [ed] rohschnitt.de *****/

var eingabe = "Eingabe";
var email = "e@mail";
if(!test_x) var test_x = false;
var achtung = Array();
var x = 0;

window.onload=start;
window.onbeforeprint=druck;
window.onafterprint=init;

//document.styleSheets.item(6).onDOMActivate=druck;

 function start()
 {
    cookietester();
    init();
    //window.addEventListener('beforeprint',druck,false);
 }

 function init()
 {
    if(!document.getElementById || !document.body.nodeName)
       return;

    for (var i=0;i<document.forms.length;i++)
    {
       for (var j=0;j<document.forms[i].elements.length;j++)
          if(document.forms[i].elements[j].type == "text" || document.forms[i].elements[j].type == "textarea")
             if(document.forms[i].elements[j].className.indexOf("mail") != -1)
             {
               document.forms[i].elements[j].onfocus = cleanmail;
               document.forms[i].elements[j].onblur = testmail;
               if(document.forms[i].elements[j].value == "@")
                  document.forms[i].elements[j].value = email;
             }
             else
             {
               document.forms[i].elements[j].onfocus = clean;
               document.forms[i].elements[j].onblur = test;
               if(document.forms[i].elements[j].value == "")
                  document.forms[i].elements[j].value = eingabe;
             }

       if(document.forms[i].frm_rechnungsadresse && !ie_mac)
       {
          for (var j=0;j<document.forms[i].frm_rechnungsadresse.length;j++)
            document.forms[i].frm_rechnungsadresse[j].onclick = dienst;

          if(test_x)
          {
             for(var j=0;j<document.forms[i].getElementsByTagName("label").length;j++)
             {
                if(document.getElementsByTagName("label")[j].className.indexOf("tausch") != -1)
                {
                   achtung[x] = document.createElement("p");
                   var klass = document.createAttribute("class");
                   klass.nodeValue = "form achtung";
                   achtung[x].setAttributeNode(klass);
                   var ide = document.createAttribute("id");
                   ide.nodeValue = "setz" + x.toString();
                   achtung[x].setAttributeNode(ide);

                   var stark = document.createElement("strong");
                   var text = document.createTextNode("Dieses Feld darf nicht leer sein!!");
                   stark.appendChild(text);

                   achtung[x].appendChild(stark);
                   x += 1;
                }
             }
          }
       }
    }
 }

 function clean(e)
 {
   e = (window.Event) ? e : window.event;
   quelle = (window.Event) ? e.target : e.srcElement;

   if(quelle.value == eingabe)
      quelle.value = "";

   quelle.style.background = "#FFFFFF";
 }

 function test(e)
 {
   e = (window.Event) ? e : window.event;
   quelle = (window.Event) ? e.target : e.srcElement;

   if(quelle.value == "")
      quelle.value = eingabe;

   quelle.style.background = "#EEEEEE";
 }

 function cleanmail(e)
 {
   e = (window.Event) ? e : window.event;
   quelle = (window.Event) ? e.target : e.srcElement;

   if(quelle.value == email)
      quelle.value = "@";

   quelle.style.background = "#FFFFFF";
 }

 function testmail(e)
 {
   e = (window.Event) ? e : window.event;
   quelle = (window.Event) ? e.target : e.srcElement;

   if(quelle.value == "@" || quelle.value.indexOf("@") == -1)
      quelle.value = email;
   else
   {
     if(quelle.value.charAt(quelle.value.length-1)=="@")
       quelle.value = quelle.value.substring(0,quelle.value.length-1);
     if(quelle.value.charAt(0)=="@")
       quelle.value = quelle.value.substring(1);
   }

   quelle.style.background = "#EEEEEE";
 }

 function dienst(e)
 {
   e = (window.Event) ? e : window.event;
   quelle = (window.Event) ? e.target : e.srcElement;
   quelle = (quelle.nodeName == "LABEL") ? document.getElementById(quelle.getAttribute("for")) : quelle;

   var y = 0;
   if(quelle.value == "rechnung_dienst")
      for(var i=0;i<quelle.form.getElementsByTagName("label").length;i++)
      {
        if(quelle.form.getElementsByTagName("label")[i].className.indexOf("tausch") != -1)
        {
          var change = quelle.form.getElementsByTagName("label")[i].innerHTML;
          if(change.indexOf("*") != -1)
             return;
          else
          {
             quelle.form.getElementsByTagName("label")[i].innerHTML = change + "<strong> *</strong>";

             var inhalt = quelle.form.getElementsByTagName("label")[i].getAttributeNode("for");
             var ausfuell = document.getElementById(inhalt.value).value;
             var ausfuelltest = (ausfuell == eingabe) ? true : false;

             var sib = quelle.form.getElementsByTagName("label")[i].previousSibling;
             sib = (sib.nodeName != "#text") ? sib : sib.previousSibling;
             var klasse = (window.Event) ? "class" : "className";

             var text = (sib.getAttribute(klasse, false)) ? sib.getAttribute(klasse, false) : "fault";
             if(text.indexOf("hide") != -1 && ausfuelltest)
             {
                text = text.substring(0, text.indexOf(" hide"));
                sib.setAttribute(klasse, text, true);
             }
             else
             {
                if(test_x && ausfuelltest)
                {
                   if(sib.nodeName == "BR")
                   {
                     sib.parentNode.replaceChild(achtung[y], sib)
                     y += 1;
                   }
                   else
                   {
                     var before = quelle.form.getElementsByTagName("label")[i];
                     before.parentNode.insertBefore(achtung[y],before);
                     y += 1;
                   }
                }
             }
          }
        }
      }

   else
      for(var i=0;i<quelle.form.getElementsByTagName("label").length;i++)
      {
        if(quelle.form.getElementsByTagName("label")[i].className.indexOf("tausch") != -1)
        {
          var change = quelle.form.getElementsByTagName("label")[i].innerHTML;
          if(change.indexOf("*") == -1)
             return;
          else
          {
             change = change.substring(0, change.indexOf("<"));
             quelle.form.getElementsByTagName("label")[i].innerHTML = change;

             var sib = quelle.form.getElementsByTagName("label")[i].previousSibling;
             sib = (sib.nodeName != "#text") ? sib : sib.previousSibling;
             var klasse = (window.Event) ? "class" : "className";

             var text = (sib.getAttribute(klasse, false)) ? sib.getAttribute(klasse, false) : "fault";
             if(text.indexOf("achtung") != -1)
             {
                text = text + " hide";
                sib.setAttribute(klasse, text, true);
             }
          }
        }
      }
 }

 function druck()
 {
    if(!document.getElementById || !document.body.nodeName)
       return;

    for(var i=0;i<document.forms.length;i++)
       for(var j=0;j<document.forms[i].elements.length;j++)
          if(document.forms[i].elements[j].type == "text" || document.forms[i].elements[j].type == "textarea")
             if(document.forms[i].elements[j].value == eingabe || document.forms[i].elements[j].value == email)
                document.forms[i].elements[j].value = "";

 }

 function bildschirm()
 {
    if(!document.getElementById || !document.body.nodeName)
       return;

    for(var i=0;i<document.forms.length;i++)
       for(var j=0;j<document.forms[i].elements.length;j++)
          if(document.forms[i].elements[j].type == "text" || document.forms[i].elements[j].type == "textarea")
          {
             if(document.forms[i].elements[j].className.indexOf("mail") != -1)
               if(document.forms[i].elements[j].value == "" || document.forms[i].elements[j].value == "@")
                  document.forms[i].elements[j].value = email;
             else
               if(document.forms[i].elements[j].value == "")
                  document.forms[i].elements[j].value = eingabe;
          }
 }