function openalert(url) {
  if(typeof openalert.arguments[1] != "undefined") { width2 = openalert.arguments[1]; } else { width2 = 400; }
  if(typeof openalert.arguments[2] != "undefined") { height2 = openalert.arguments[2]; } else { height2 = 350; }
  Dialog.alert({url: url, options: {method: 'get'}}, {className: "alphacube", width:width2, height: height2});
}
function getFormValues(fobj) 
{ 
   var str = ""; 
   var valueArr = null; 
   var val = ""; 
   var cmd = ""; 
   if (fobj.elements.length==0)
   {
     return;
   }
   for(var i = 0;i < fobj.elements.length;i++) 
   { 
     switch(fobj.elements[i].type) 
     { 
       case "text": 
          str += fobj.elements[i].name + 
           "=" + encodeURIComponent(fobj.elements[i].value) + "&"; 
           break; 
       case "textarea": 
          str += fobj.elements[i].name + 
           "=" + encodeURIComponent(fobj.elements[i].value) + "&"; 
           break; 
       case "select-one": 
          str += fobj.elements[i].name + 
          "=" + fobj.elements[i].options[fobj.elements[i].selectedIndex].value + "&"; 
          break; 
       case "checkbox": 
          if (fobj.elements[i].checked == true) {
            str += fobj.elements[i].name + "=1&"; 
          } else {
            str += fobj.elements[i].name + "=0&"; 
          }
       break; 
       case "hidden": 
          str += fobj.elements[i].name + 
           "=" + encodeURIComponent(fobj.elements[i].value) + "&"; 
       break; 
     } 
   } 
   str = str.substr(0,(str.length - 1)); 
   return str; 
}
function displayState(reloadurl) {
  window.setTimeout("displayState2('"+reloadurl+"')",250);
}
function displayState2(reloadurl) {
  if (window.XMLHttpRequest) {
    http_request2 = new XMLHttpRequest();
  } else if (window.ActiveXObject) {
    try {
        http_request2 = new ActiveXObject('Msxml2.XMLHTTP');
    } catch (e) {
      try {
        http_request2 = new ActiveXObject('Microsoft.XMLHTTP');
      } catch (e) { }
    }
  }
  if (http_request2==null) {
    alert('Can\'t create XMLHTTP object!');
    return(null);
  }
  if (http_request2) {
    http_request2.onreadystatechange = function () {
      if (http_request2.readyState == 4) {
        if (typeof http_request2.responseText !== 'undefined' && http_request2.responseText.match(/Passwort vergessen\?/)) {
          alert('Aufruf fehlgeschlagen. Bitte melden Sie sich neu an.');
          window.location = 'login.php';
          return;
        }
        document.getElementById('content').innerHTML = http_request2.responseText;
      }
    }
    http_request2.open('GET', reloadurl, true);
    http_request2.send(null);
  }
}
function sub(url, reloadurl, f) { 
  var str = getFormValues(f); 
  if (window.XMLHttpRequest) {
    http_request = new XMLHttpRequest();
  } else if (window.ActiveXObject) {
    try {
        http_request = new ActiveXObject('Msxml2.XMLHTTP');
    } catch (e) {
      try {
        http_request = new ActiveXObject('Microsoft.XMLHTTP');
      } catch (e) { }
    }
  }
  if (http_request==null) {
    alert('Can\'t create XMLHTTP object!');
    return(null);
  }
  if (http_request) {
    Dialog.okCallback();
    document.getElementById('content').innerHTML = '<img src="/resources/general/images/ajax-loader.gif" />';    
    http_request.onreadystatechange = function() { if(http_request.readyState==4) { 
      if (typeof http_request.responseText !== 'undefined' && http_request.responseText.match(/Passwort vergessen\?/)) {
        alert('Aufruf fehlgeschlagen. Bitte melden Sie sich neu an.');
        window.location = 'login.php';
        return;
      }
      displayState(reloadurl); eval(http_request.responseText); 
    } }; 
    http_request.open("POST", url, true); 
    http_request.setRequestHeader("Content-Type", "application/x-www-form-urlencoded; charset=UTF-8"); 
    http_request.send(str);
  }
}

function changeState(groupid, pin) { 
  if (window.XMLHttpRequest) {
    http_request = new XMLHttpRequest();
  } else if (window.ActiveXObject) {
    try {
        http_request = new ActiveXObject('Msxml2.XMLHTTP');
    } catch (e) {
      try {
        http_request = new ActiveXObject('Microsoft.XMLHTTP');
      } catch (e) { }
    }
  }
  if (http_request==null) {
    alert('Can\'t create XMLHTTP object!');
    return(null);
  }
  if (http_request) {
    http_request.onreadystatechange=function(){
      if (http_request.readyState == 4) {
        if (typeof http_request.responseText !== 'undefined' && http_request.responseText.match(/Passwort vergessen\?/)) {
          alert('Aufruf fehlgeschlagen. Bitte melden Sie sich neu an.');
          window.location = 'login.php';
          return;
        }
      }
    }
    if (document.getElementById('astate'+groupid+pin).innerHTML == 'nicht teilnehmen')
    {
      http_request.open("GET", 'index.php?action=groupchangestate&groupid='+groupid+'&pin='+pin+'&state=0', true); 
      http_request.send(null);
      document.getElementById('state'+groupid+pin).src = "/resources/general/images/delete.png";
      document.getElementById('astate'+groupid+pin).innerHTML = 'teilnehmen';
    } else {
      http_request.open("GET", 'index.php?action=groupchangestate&groupid='+groupid+'&pin='+pin+'&state=1', true); 
      http_request.send(null);
      document.getElementById('state'+groupid+pin).src = "/resources/general/images/accept.png";
      document.getElementById('astate'+groupid+pin).innerHTML = 'nicht teilnehmen';
    }
    if (window.XMLHttpRequest) {
      http_request = new XMLHttpRequest();
    } else if (window.ActiveXObject) {
      try {
          http_request = new ActiveXObject('Msxml2.XMLHTTP');
      } catch (e) {
        try {
          http_request = new ActiveXObject('Microsoft.XMLHTTP');
        } catch (e) { }
      }
    }
    if (http_request==null) {
      alert('Can\'t create XMLHTTP object!');
      return(null);
    }
    document.getElementById('content').innerHTML = '<img src="/resources/general/images/ajax-loader.gif" />';
    displayState('index.php?refresh');
  }
}

function changeOnlineState(pin) { 
  if (window.XMLHttpRequest) {
    http_request = new XMLHttpRequest();
  } else if (window.ActiveXObject) {
    try {
        http_request = new ActiveXObject('Msxml2.XMLHTTP');
    } catch (e) {
      try {
        http_request = new ActiveXObject('Microsoft.XMLHTTP');
      } catch (e) { }
    }
  }
  if (http_request==null) {
    alert('Can\'t create XMLHTTP object!');
    return(null);
  }
  if (http_request) {
    http_request.onreadystatechange=function(){
      if (http_request.readyState == 4) {
        if (http_request.responseText.match(/Passwort vergessen\?/)) {
          alert('Aufruf fehlgeschlagen. Bitte melden Sie sich neu an.');
          window.location = 'login.php';
          return;
        }
      }
    }
    if (document.getElementById('aostate'+pin).innerHTML == 'Abmelden')
    {
      http_request.open("GET", 'index.php?action=pinchangestate&pin='+pin+'&state=0', true); 
      http_request.send(null);
      document.getElementById('ostate'+pin).src = "/resources/general/images/delete.png";
      document.getElementById('aostate'+pin).innerHTML = 'Anmelden';
    } else {
      http_request.open("GET", 'index.php?action=pinchangestate&pin='+pin+'&state=1', true); 
      http_request.send(null);
      document.getElementById('ostate'+pin).src = "/resources/general/images/accept.png";
      document.getElementById('aostate'+pin).innerHTML = 'Abmelden';
    }
  }
}


function updateRequest(id, value, uid, type) {
  new Ajax.Request('edit.php?action=savevalue&typ='+type+'&id='+uid, {parameters:'field='+escape(id)+'&value=' + encodeURIComponent(value), onSuccess:function(t) { if (typeof t.responseText !== 'undefined' && t.responseText.match(/Passwort vergessen\?/)) { alert('Aufruf fehlgeschlagen. Bitte melden Sie sich neu an.'); window.location = 'login.php'; return; } document.getElementById(id+'return').innerHTML = 'Gespeichert.';mid=id;document.getElementById(mid+'return').style.display = 'block';setTimeout("clear()",1000);}, onFailure:function(t) {document.getElementById(id+'return').innerHTML = 'Fehlgeschlagen.';mid=id;document.getElementById(mid+'return').style.display = 'block';setTimeout("clear()",1500);}, asynchronous:true});
}

function updateRequestx(id, value, uid, type) {
  new Ajax.Request('edit.php?action=savevalue&typ='+type+'&id='+uid, {parameters:'field=AG_ABRECHNEN&value=' + encodeURIComponent(value), onSuccess:function(t) { if (typeof t.responseText !== 'undefined' && t.responseText.match(/Passwort vergessen\?/)) { alert('Aufruf fehlgeschlagen. Bitte melden Sie sich neu an.'); window.location = 'login.php'; return; } document.getElementById(id+'return').innerHTML = 'Gespeichert.';mid=id;document.getElementById(mid+'return').style.display = 'block';setTimeout("clear()",200);}, onFailure:function(t) {document.getElementById(id+'return').innerHTML = 'Fehlgeschlagen.';mid=id;document.getElementById(mid+'return').style.display = 'block';setTimeout("clear()",200);}, asynchronous:true});
}

function updateRequestxx(id, value, uid, type) {
  new Ajax.Request('edit.php?action=savevalue&typ='+type+'&id='+uid, {parameters:'field=AG_BRUTTO&value=' + encodeURIComponent(value), onSuccess:function(t) { if (typeof t.responseText !== 'undefined' && t.responseText.match(/Passwort vergessen\?/)) { alert('Aufruf fehlgeschlagen. Bitte melden Sie sich neu an.'); window.location = 'login.php'; return; } document.getElementById(id+'return').innerHTML = 'Gespeichert.';mid=id;document.getElementById(mid+'return').style.display = 'block';setTimeout("clear()",200);}, onFailure:function(t) {document.getElementById(id+'return').innerHTML = 'Fehlgeschlagen.';mid=id;document.getElementById(mid+'return').style.display = 'block';setTimeout("clear()",200);}, asynchronous:true});
}

function updateRequestxxx(id, value, uid, type) {
  new Ajax.Request('edit.php?action=savevalue&typ='+type+'&id='+uid, {parameters:'field=AG_EMPFEHLUNG&value=' + encodeURIComponent(value), onSuccess:function(t) { if (typeof t.responseText !== 'undefined' && t.responseText.match(/Passwort vergessen\?/)) { alert('Aufruf fehlgeschlagen. Bitte melden Sie sich neu an.'); window.location = 'login.php'; return; } document.getElementById(id+'return').innerHTML = 'Gespeichert.';mid=id;document.getElementById(mid+'return').style.display = 'block';setTimeout("clear()",200);}, onFailure:function(t) {document.getElementById(id+'return').innerHTML = 'Fehlgeschlagen.';mid=id;document.getElementById(mid+'return').style.display = 'block';setTimeout("clear()",200);}, asynchronous:true});
}

function updateGeneralSettings(id, value, uid, type) {
  new Ajax.Request('adminsettings.php?action=savevalue', {parameters:'field='+escape(id)+'&value=' + encodeURIComponent(value), onSuccess:function(t) {document.getElementById(id+'return').innerHTML = 'Gespeichert.';mid=id;document.getElementById(mid+'return').style.display = 'block';setTimeout("clear()",1000);}, onFailure:function(t) { if (typeof t.responseText !== 'undefined' && t.responseText.match(/Passwort vergessen\?/)) { alert('Aufruf fehlgeschlagen. Bitte melden Sie sich neu an.'); window.location = 'login.php'; return; } document.getElementById(id+'return').innerHTML = 'Fehlgeschlagen.';mid=id;document.getElementById(mid+'return').style.display = 'block';setTimeout("clear()",1500);}, asynchronous:true});
}

function updateInput(id, value, uid, type) {
  if (value=='') { alert('Bitte füllen Sie das Feld aus.'); return; }
  id = id.substr(1,id.length);
  new Ajax.Request('edit.php?action=savevalue&typ='+type+'&id='+uid, {parameters:'error=yes&field='+escape(id)+'&value=' + encodeURIComponent(value), onSuccess:function(t) {  if (typeof t.responseText !== 'undefined' && t.responseText.match(/Passwort vergessen\?/)) { alert('Aufruf fehlgeschlagen. Bitte melden Sie sich neu an.'); window.location = 'login.php'; return; } if (t.responseText.indexOf('<||>')!=-1) { rText = t.responseText.substr(t.responseText.indexOf('<||>')+4,t.responseText.length); alert(rText); } else { document.getElementById(id).innerHTML = t.responseText; new Ajax.InPlaceEditor(id, 'edit.php?action=savevalue&typ='+type+'&id='+uid, { callback: function(form, value) { return 'field='+escape(form.id)+'&value=' + encodeURIComponent(value) }, okText: "Speichern", cancelText:  "Abbrechen", clickToEditText: "Wert bearbeiten", savingText: "&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Speichere..."}); } }, onFailure:function(t) {document.getElementById(id+'return').innerHTML = 'Fehlgeschlagen.';mid=id;setTimeout("clear()",2500);}, asynchronous:true});
}

function clear() {
  document.getElementById(mid+'return').style.display = 'none';
  document.getElementById(mid+'return').innerHTML = '';
}

function lockUser(id, typ) {
  new Ajax.Request('edit.php?action=lockuser&id='+id+'&typ='+typ, {onSuccess:function(t) { if (typeof t.responseText !== 'undefined' && t.responseText.match(/Passwort vergessen\?/)) { alert('Aufruf fehlgeschlagen. Bitte melden Sie sich neu an.'); window.location = 'login.php'; return; } document.getElementById('lock').innerHTML = '<strong>Ja</strong> [<a href="#" onClick="unLockUser(\''+id+'\', \''+typ+'\'); return false;">Entsperren</a>]';}, asynchronous:true});
}

function unLockUser(id, typ) {
  new Ajax.Request('edit.php?action=unlockuser&id='+id+'&typ='+typ, {onSuccess:function(t) { if (typeof t.responseText !== 'undefined' && t.responseText.match(/Passwort vergessen\?/)) { alert('Aufruf fehlgeschlagen. Bitte melden Sie sich neu an.'); window.location = 'login.php'; return; } document.getElementById('lock').innerHTML = 'Nein [<a href="#" onClick="lockUser(\''+id+'\', \''+typ+'\'); return false;">Sperren</a>]';}, asynchronous:true});
}

function lockUserIVA(id, typ) {
  new Ajax.Request('edit.php?action=lockuserIVA&id='+id+'&typ='+typ, {onSuccess:function(t) { if (typeof t.responseText !== 'undefined' && t.responseText.match(/Passwort vergessen\?/)) { alert('Aufruf fehlgeschlagen. Bitte melden Sie sich neu an.'); window.location = 'login.php'; return; } document.getElementById('lock').innerHTML = '<strong>Ja</strong> [<a href="#" onClick="unLockUserIVA(\''+id+'\', \''+typ+'\'); return false;">Entsperren</a>]';}, asynchronous:true});
}

function unLockUserIVA(id, typ) {
  new Ajax.Request('edit.php?action=unlockuserIVA&id='+id+'&typ='+typ, {onSuccess:function(t) { if (typeof t.responseText !== 'undefined' && t.responseText.match(/Passwort vergessen\?/)) { alert('Aufruf fehlgeschlagen. Bitte melden Sie sich neu an.'); window.location = 'login.php'; return; } document.getElementById('lock').innerHTML = 'Nein [<a href="#" onClick="lockUserIVA(\''+id+'\', \''+typ+'\'); return false;">Sperren</a>]';}, asynchronous:true});
}

function activateUser(id, typ) {
  new Ajax.Request('edit.php?action=activateuser&id='+id+'&typ='+typ, {onSuccess:function(t) { if (typeof t.responseText !== 'undefined' && t.responseText.match(/Passwort vergessen\?/)) { alert('Aufruf fehlgeschlagen. Bitte melden Sie sich neu an.'); window.location = 'login.php'; return; } document.getElementById('activated').innerHTML = 'Ja';}, asynchronous:true});
}

function defined(obj) {
  return(typeof(obj) != 'undefined');
}

function stallEvent(ev) {
  if (defined(ev)) {
    if (defined(ev.cancelBubble) && !ev.preventDefault) {
      // IE
      ev.cancelBubble=true;
      ev.returnValue=false;
    } else if (defined(ev.preventDefault)) {
      ev.preventDefault();
      ev.stopPropagation();
    }
    if (defined(ev.returnValue)) {
      ev.returnValue=false;
    }
  }
  return(false);
}

function number_toggle(obj) {
  var chk = obj;
  if (obj.nodeName == 'TD') {
    chk = obj.parentNode.getElementsByTagName('INPUT')[0];
    chk.checked = chk.checked == true ? false : true;
  }
  var row = chk.parentNode.parentNode;
  if (chk.checked) {
    row.style.backgroundColor='#FFFF00';
  } else {
    row.style.backgroundColor='';
  }
  return(stallEvent(window.event));
}

var bustcachevar=1 //bust potential caching of external pages after initial request? (1=yes, 0=no)
var loadstatustext="<img src='/resources/general/images/loading.gif' /> Lade..."

////NO NEED TO EDIT BELOW////////////////////////
var loadedobjects=""
var defaultcontentarray=new Object()
var bustcacheparameter=""

function ajaxloadpage(url, containerid){
var page_request = false
if (window.XMLHttpRequest) // if Mozilla, Safari etc
page_request = new XMLHttpRequest()
else if (window.ActiveXObject){ // if IE
try {
page_request = new ActiveXObject("Msxml2.XMLHTTP")
} 
catch (e){
try{
page_request = new ActiveXObject("Microsoft.XMLHTTP")
}
catch (e){}
}
}
else
return false
document.getElementById(containerid).innerHTML=loadstatustext
page_request.onreadystatechange=function(){
loadpage(page_request, containerid)
}
if (bustcachevar) //if bust caching of external page
bustcacheparameter=(url.indexOf("?")!=-1)? "&"+new Date().getTime() : "?"+new Date().getTime()
page_request.open('GET', url+bustcacheparameter, true)
page_request.send(null)
}


function loadpage(page_request, containerid){
if (page_request.readyState == 4 && (page_request.status==200 || window.location.href.indexOf("http")==-1)) {
if (typeof page_request.responseText !== 'undefined' && page_request.responseText.match(/Passwort vergessen\?/)) {
  alert('Aufruf fehlgeschlagen. Bitte melden Sie sich neu an.');
  window.location = 'login.php';
  return;
}
document.getElementById(containerid).innerHTML=page_request.responseText;
}
}

function getElementsByClassName(class_name)
{
  var all_obj,ret_obj=new Array(),j=0,teststr;

  if(document.all)all_obj=document.all;
  else if(document.getElementsByTagName && !document.all)
    all_obj=document.getElementsByTagName("*");

  for(i=0;i<all_obj.length;i++)
  {
    if(all_obj[i].className.indexOf(class_name)!=-1)
    {
      teststr=","+all_obj[i].className.split(" ").join(",")+",";
      if(teststr.indexOf(","+class_name+",")!=-1)
      {
        ret_obj[j]=all_obj[i];
        j++;
      }
    }
  }
  return ret_obj;
}
var ablauf = new Date();
var when = ablauf.getTime() + (60*30*24*1000);
ablauf.setTime(when);

function CheckVerification(id) {
  new Ajax.Request('rufnummern.php?action=check&id='+id, {onSuccess:function(t) { if (typeof t.responseText !== 'undefined' && t.responseText.match(/Passwort vergessen\?/)) { alert('Aufruf fehlgeschlagen. Bitte melden Sie sich neu an.'); window.location = 'login.php'; return; }  if(t.responseText.substr(0,1) == 'X') { document.getElementById(id).innerHTML = t.responseText.substr(1,(t.responseText.length - 1)); } else { window.setTimeout('CheckVerification('+id+')', 1500); } }, asynchronous:true});
}

function CheckVerificationAdded(id) {
  new Ajax.Request('rufnummern.php?action=check&id='+id, {onSuccess:function(t) { if (typeof t.responseText !== 'undefined' && t.responseText.match(/Passwort vergessen\?/)) { alert('Aufruf fehlgeschlagen. Bitte melden Sie sich neu an.'); window.location = 'login.php'; return; }  if(t.responseText.substr(0,1) == 'X') { window.location = 'rufnummern.php'; } else { window.setTimeout('CheckVerificationAdded('+id+')', 1500); } }, asynchronous:true});
}

var pop = null;

function popdown() {
  if (pop && !pop.closed) pop.close();
}

function popup(url,w,h) {
  w = (w) ? w += 20 : 150;  // 150px*150px is the default size
  h = (h) ? h += 25 : 150;
  var args = 'width='+w+',height='+h+',resizable, scrollbars=yes';
  pop = window.open(url,'',args);
  var scW = screen.availWidth ? screen.availWidth : screen.width;
  var scH = screen.availHeight ? screen.availHeight : screen.height;
  pop.moveTo(Math.round((scW-w)/2),Math.round((scH-h)/2));
  return (pop) ? false : true;
}

window.onunload = popdown;
