 

function init() {
   $('loading').style.display="none";
   $('loading').style.width=document.body.offsetWidth+"px";
   $('loading').style.height=(document.body.clientHeight+300)+"px";
   $('loading_img').style.marginTop=((window.innerHeight/2)+window.pageYOffset-50)+"px";
   $('loading_img').style.marginLeft=(window.innerWidth/2-50)+"px";

   $$('div.noscript')[0].style.display="none";
   $$('div.outline')[0].style.display="";


   new Effect.Opacity('loading', {from: 0.8, to: 0, delay:0});
}

function toggle_loading() {
   $('loading').style.height=(document.body.clientHeight+300)+"px";
   $('loading_img').style.marginTop=((window.innerHeight/2-150)+window.pageYOffset)+"px";
   if($('loading').style.display=="") {
      new Effect.Opacity('loading', {
         from: 0.8, to: 0, delay:0, duration:0.5,
         afterFinish:function() {
            $('loading').style.display="none";
         }
      });
   } else {
      $('loading').style.display="";
      new Effect.Opacity('loading', {from: 0, to: 0.8, delay:0, duration:0.5});
   }
}

function tool_send(module) {

   var params=new Array();
   var f = document.forms[module];
   var i=0; var j=0;
   for(i=0; i<f.elements.length; i++) {
      var e = f.elements[i];

      if(e.type && e.type=="checkbox") {
         params[j] = e.name+"="+(e.checked==true ? "Y" : "N"); j++;
      } else if(e.type && e.type=="radio") {
         if(e.checked==true) { params[j] = e.name+"="+encodeURIComponent(e.value);  j++; }
      } else {
         params[j] = e.name+"="+encodeURIComponent(e.value); j++;
      }
      f.elements[i].disabled=true;
   }

   toggle_loading();

   new Ajax.Request("ajax.php", {
      method:'POST',
      parameters: 'module='+encodeURIComponent(module)+(i>0 ? "&"+params.join("&") : ""),
      onComplete: function (r) {
         var json = r.responseText.evalJSON();
         if(json.error_code && json.error_code=="no_error" && json.request) {

            for(i=0; i<f.elements.length; i++) {
               //alert(f.elements[i].name+": "+f.elements[i].alt);
               if(f.elements[i].alt && f.elements[i].alt=="fieldset_wrapper") {
                  //alert($(f.elements[i].value)+" : "+json.request[f.elements[i].name]);
                  if($(f.elements[i].value) && json.request[f.elements[i].name]) {
                     $(f.elements[i].value).innerHTML = json.request[f.elements[i].name];
                  }

               } else if(json.request[f.elements[i].name]) {
                  f.elements[i].value = json.request[f.elements[i].name];
               }
            }

         } else if(json.error_code && json.error_code!="no_error") {
            alert(json.error_msg);
         } else {
            alert('Ungueltiger Aufruf!');
         }
         toggle_loading();
         for(i=0; i<f.elements.length; i++) {
            f.elements[i].disabled=false;
         }
      },
      onFailure: function() {
         alert('Fehler beim Aufruf des Moduls!');
         toggle_loading();
      }
   });

}

function tool_toggle(module) {
   var f = document.forms[module];
   Effect.toggle(f, 'appear', {duration:0.5});
}

function tool_jumptoggle(module) {
   var f = document.forms;
   for(var i=0; i<f.length; i++) {
      if(f[i].name!=module && f[i].style.display!="none") {
         f[i].fade({delay:0, duration:0.5});
      } else if(f[i].name==module && f[i].style.display=="none") {
         f[i].appear({delay:0, duration:0.5, afterFinish:function() {window.location.href="#"+module+"_anchor";}});
      } else if(f[i].name==module) {
         window.location.href="#"+module+"_anchor";
      }
   }
}

