function addFavorites()
{
   /**
   * by Michael Schräber
   * http://www.michael-schraeber.de
   */

   if ((navigator.appName == "Microsoft Internet Explorer") && (parseInt(navigator.appVersion) >= 4))
   {
      window.external.AddFavorite(document.location,document.title);
   }
   else if(navigator.userAgent.indexOf("Firefox")!=-1 || navigator.userAgent.indexOf("firefox")!=-1)
   {
      window.external.addPanel(document.title, document.location, '')
   }
   else
   {
      window.alert('Leider unterstützt Ihr Browser diese Funktion nicht. Bitte fügen Sie die Seite manuell Ihren Lesezeichen hinzu.');
   }
}

function htmlStr(text)
{
   text = String(text);
   return text.replace(/&/g, '&amp;').replace(/</g, '&lt;').replace(/>/g, '&gt;').replace(/"/g, '&quot;').replace(/'/g, '&#39;');
}

function htmlInt(zahl)
{
   zahl = parseInt(zahl);
   if (zahl == 'NaN')
   {
      return 0;
   }
   else
   {
      return zahl;
   }
}

function uriStr(text)
{
   return postUriStr(text);
}

function postUriStr(text)
{
   if (text == null)
   {
      return '';
   }
   else
   {
      return encodeURIComponent(text);
   }
}


function $(id)
{
   return document.getElementById(id);
}

function submitButton(elementid)
{
   $(elementid).value = 'Bitte warten...';
   $(elementid).disabled = 'disabled';
}

function ajaxRequestHTML(area_out, undZweiBereich, formmethod, ajaxfile, param)
{
   function ausgabe()
   {
      if (XMLHTTP.responseText == 'ajaxtimeout')
      {
         window.location.replace('/'+postUriStr(undZweiBereich)+'/?login_error=2');
      }
      else
      {
         $(area_out).innerHTML = XMLHTTP.responseText;
      }
   }

   var XMLHTTP = null;
   if (window.XMLHttpRequest) // non-IE browsers
   {
      XMLHTTP = new XMLHttpRequest();
   }
   else if (window.ActiveXObject) // IE new Version
   {
      try
      {
         XMLHTTP = new ActiveXObject("Msxml2.XMLHTTP");
      }
      catch (ex)
      {
         try // IE old Version
         {
            XMLHTTP = new ActiveXObject("Microsoft.XMLHTTP");
         }
         catch (ex)
         {
         }
      }
   }

   XMLHTTP.open(formmethod, ajaxfile, true);
   XMLHTTP.onreadystatechange = function()
   {
      if(XMLHTTP.readyState == 4 && XMLHTTP.status == 200)
      {
         ausgabe();
      }
   }
   XMLHTTP.setRequestHeader('Content-Type','application/x-www-form-urlencoded');
   XMLHTTP.send(param);
}

function ajaxRequestReturnResponse(formmethod, ajaxfile, param)
{
   function returnIt()
   {
      if (XMLHTTP.responseText == 'ajaxtimeout')
      {
         window.location.replace('/?loginerror=5');
      }
      else
      {
         return XMLHTTP.responseText;
      }
   }

   var XMLHTTP = null;
   if (window.XMLHttpRequest) // non-IE browsers
   {
      XMLHTTP = new XMLHttpRequest();
   }
   else if (window.ActiveXObject) // IE new Version
   {
      try
      {
         XMLHTTP = new ActiveXObject("Msxml2.XMLHTTP");
      }
      catch (ex)
      {
         try // IE old Version
         {
            XMLHTTP = new ActiveXObject("Microsoft.XMLHTTP");
         }
         catch (ex)
         {
         }
      }
   }

   XMLHTTP.open(formmethod, ajaxfile, true);
   XMLHTTP.onreadystatechange = function()
   {
      if(XMLHTTP.readyState == 4 && XMLHTTP.status == 200)
      {
         returnIt();
      }
   }
   XMLHTTP.setRequestHeader('Content-Type','application/x-www-form-urlencoded');
   XMLHTTP.send(param);
}

function isInteger(stext)
{
   var valid_chars = '0123456789';
   var is_number = true;
   var char2 = '';

 
   for (i = 0; i < stext.length && is_number == true; i++) 
   { 
      char2 = stext.charAt(i); 
      if (valid_chars.indexOf(char2) == -1) 
      {
         is_number = false;
      }
   }
   return is_number;
}

function createValidMobileNumber(stext)
{
   var valid_chars = '0123456789';
   var char2 = '';
   var mobilenumber = '';

 
   for (i = 0; i < stext.length; i++) 
   { 
      char2 = stext.charAt(i); 
      if (valid_chars.indexOf(char2) != -1) 
      {
         mobilenumber += char2;
      }
   }
   return mobilenumber;
}

function checkEMail(email)
{
   var regex2 = new RegExp(/^[a-zA-Z0-9\.\-\_]{2,}\@([a-zA-Z0-9]+[a-zA-Z0-9\-]*[a-zA-Z0-9]+\.)+[a-zA-Z]{2,6}$/);
   var match = regex2.exec(email);
   
   if(match == null)
   {
      return false;
   }
   else
   {
      return true;
   }
}

function getAge(gdate, month, year)
{
   jetzt = new Date();
      
   var alter = parseInt(jetzt.getFullYear()) - parseInt(year);
   
   if(month > parseInt(jetzt.getMonth()) && alter != 0)
   {
      alter--;
   }
   else if(month == parseInt(jetzt.getMonth()) && alter != 0)
   {
      if(gdate > parseInt(jetzt.getDay()) )
      {
         alter--;
      }
   }
   return alter;
}

function inArray(needle, haystack)
{
   var i;
   for (i = 0; i < haystack.length; i++)
   {
      if (haystack[i] == needle)
      {
         return true;
      }
   }
   return false;
}

function isFloat(stext)
{
   var valid_chars = '0123456789.,';
   var is_number = true;
   var char2 = '';

 
   for (i = 0; i < stext.length && is_number == true; i++) 
   { 
      char2 = stext.charAt(i); 
      if (valid_chars.indexOf(char2) == -1) 
      {
         is_number = false;
      }
   }
   return is_number;
}

function keepTopLayerFixed()
{
   if (window.navigator.userAgent.indexOf("MSIE ") > -1 && parseFloat(navigator.appVersion) >= 4)
   {
      var y = document.body.scrollTop;
   }
   else
   {
      var y = window.pageYOffset;
   }
   var mLayer;
   
   mLayer = $('top_layer_out');
   if(mLayer)
   {
      if(mLayer.style.display != 'none')
      {
         mLayer.style.top = y + 'px';
      }
   }
}

function pImg(delay, url)
{
   window.setTimeout("preloadImage('"+url+"')", delay);
}

function preloadImage(url)
{
   var preImage = new Image();
   preImage.src = url;
}

function reloadCaptcha(bildid)
{
   $(bildid).src = '/images/captcha.png?'+postUriStr(Math.round(Math.random() * 100000000));
}

function showTopScreen(breite)
{
   /**
   * by Michael Schräber
   * http://www.michael-schraeber.de
   */
   
   var e = $('top_layer_out');
   var f = $('top_layer_in');
   
   if (window.navigator.userAgent.indexOf("MSIE ") > -1 && parseFloat(navigator.appVersion) >= 4) {
      var h = document.body.clientHeight;
      var w = document.body.clientWidth;
      var y = document.body.scrollTop + 50 +'px';
   }
   else {
      var h = window.innerHeight;
      var w = window.innerWidth;
      var y = window.pageYOffset + 50 + 'px';
   }
   
   e.style.height = h+'px';
   e.style.width = w+'px';
   e.style.display = 'block';
   
   f.style.top = y;
   var l_c = Math.round((w - breite) / 2);
   f.style.left = l_c+'px';
   f.style.width = breite+'px';
   f.style.padding = '0px';
   f.style.display = 'block';
   
   keepTopLayerFixed();
}

function closeTopScreen()
{
   $('top_layer_out').style.display = 'none';
   $('top_layer_in').style.display = 'none';
   $('top_layer_in').innerHTML = '';
}


function showPictureInLayer(width,picurl,alt,fusszeile)
{
   showTopScreen(width);
   $('top_layer_in').innerHTML = '<div class="center"><a href="javascript:closeTopScreen();" title="schließen"><img style="border:0px;" src="'+picurl+'" alt="'+alt+'" /></a></div>';
   if(fusszeile != '')
   {
      $('top_layer_in').innerHTML += '<div class="center"><i>'+fusszeile+'</i></div>';
   }
}

function switchImage(id,image)
{
   $(id).src = image;
}


