////////////////////////////////////////////////////////////
// GENERAL
////////////////////////////////////////////////////////////
function popup(url, width, height, scrollbars) {
  args = 'width=' + width + ',height=' + height + ',resizable';
  if (scrollbars) {
    args = args + ', scrollbars=yes';
  }
  ok = window.open(url,'',args)
  if (ok) return false;
  else return true;
}

function calltooltip(ttext) {
  overlib(ttext, WIDTH, 100, DELAY, 1000, VAUTO, SHADOW, SHADOWIMAGE, 'images/shadow.png', SHADOWX, 4);
}

function getframeheight() {
    if (self.innerWidth) {
      frameHeight = self.innerHeight;
    }
    else if (document.documentElement && document.documentElement.clientWidth) {
      frameHeight = document.documentElement.clientHeight;
    }
    else if (document.body) {
      frameHeight = document.body.clientHeight;
    }
    return frameHeight;
}
////////////////////////////////////////////////////////////
// SEARCH
////////////////////////////////////////////////////////////
function determineresolution() {
  if (screen.height <= 600) {
    document.getElementById('lowres').style.display = "block";
    setTimeout("document.getElementById('wrapper').style.display = 'block';document.getElementById('lowres').style.display = 'none'; document.suchen.qa.focus();",5000);
  }
  else {
    document.getElementById('wrapper').style.display = "block";  
    document.getElementById('qa').focus();
    changesodheight();
  }
}

function changesodheight() {
    
    if (document.getElementById('sod') != null) {

      var idealheight = document.getElementById('sform').offsetHeight + 14;
      var maxheight = getframeheight() - 40;
      
      var newdivheight = idealheight;
      if (newdivheight < 225) { newdivheight = 225; }
      if (newdivheight > maxheight) { newdivheight = maxheight; }
      
      document.getElementById('sod').style.height = newdivheight + 'px';

    }
}

function registerEvents() {
   var formparts = new Array("qa", "df", "ma");
  
  for (var i = 0; i < formparts.length; ++i) {
    var cb = document.getElementById(formparts[i] + '_top');
    cb.onclick = updateTopCheckboxes;
    
    var db = document.getElementById(formparts[i] + '_topdiv');
    db.onclick = switchSubCheckboxes;
       
    var childs = document.getElementById(formparts[i] + '_details').getElementsByTagName('input');
    for (var j = 0; j < childs.length; ++j) {
      childs[j].onclick = updateSubCheckboxes;
    }
    
    // Hide Sub Checkboxes
    document.getElementById(formparts[i] + '_details').style.display = 'none';
  }
  
  // Top three checkboxes
  topthree = new Array('wholeword', 'filenumbers', 'finddate');
  for (i = 0; i < topthree.length; i++) {
    var td = document.getElementById(topthree[i]);
    td.onclick = handleTopThree;    
  }
  
  // Sodheight
  window.onresize = changesodheight;

}

function handleTopThree() {
  var tid = this.id;
  
  for (var i = 0; i < topthree.length; i++) {
    if (tid != topthree[i]) {
      document.getElementById(topthree[i]).checked = false;
    }
  }
  
}

function switchSubCheckboxes() {
  var DivId = this.id;
  var AreaIdentifier = DivId.substr(0,2);

  var SubBlock = document.getElementById(AreaIdentifier + '_details');
  if (SubBlock.style.display == 'block') {
    document.getElementById(AreaIdentifier + '_details').style.display = 'none';
    changesodheight();
  }
  else {
    document.getElementById(AreaIdentifier + '_details').style.display = 'block';
    changesodheight();
  }
}

function updateSubCheckboxes() {
 var SubCheckBox = this.id;
 var AreaIdentifier = SubCheckBox.substr(0,2);
  var AllChilds = [];
  var CheckedCounter = 0;
  AllChilds = document.getElementById(AreaIdentifier + '_details').getElementsByTagName('input'); 
  for (var j = 0; j < AllChilds.length; ++j) {
    if (AllChilds[j].checked == true) {
      CheckedCounter++;
    }
  }
  if (CheckedCounter ==  0) {
    document.getElementById(AreaIdentifier + '_top').checked = false;
  }
  else {
    document.getElementById(AreaIdentifier + '_top').checked = true;  
  }
}

function updateTopCheckboxes() {
  var TopCheckBox = this.id;
  var AreaIdentifier = TopCheckBox.substr(0,2);
  var CheckedCounter = 0;
  var AllChilds = [];
  AllChilds = document.getElementById(AreaIdentifier + '_details').getElementsByTagName('input');
  for (var j = 0; j < AllChilds.length; ++j) {
    if (AllChilds[j].checked == true) {
      CheckedCounter++;
    }
  }
  if (CheckedCounter >  0) {
    for (var j = 0; j < AllChilds.length; ++j) {
      AllChilds[j].checked = false;
    }
    this.checked = false;
    document.getElementById(AreaIdentifier + '_details').style.display = 'none';
    changesodheight();
  }
  else {
    for (var j = 0; j < AllChilds.length; ++j) {
      AllChilds[j].checked = true;
    }
    this.checked = true;
    document.getElementById(AreaIdentifier + '_details').style.display = 'block';
    changesodheight();
  }
}

function qafocus() {
   var qainput = document.getElementById('qa');
   qainput.onfocus = function () {
    this.className = 'qaover';
   }
   qainput.onblur = function () {
    this.className = 'qaout'; 
   }
}

function checkCheckboxes() {
  var AreaIdentifiers = new Array('df', 'qa', 'ma');
  var CheckedCounter = 0;
  var AllChilds;
  
  for (var j = 0; j < AreaIdentifiers.length; ++j) {
    if (document.getElementById(AreaIdentifiers[j] + '_top').checked == false) {
      CheckedCounter++;
    }
  }
  if (CheckedCounter == 3) {
    for (var j = 0; j < AreaIdentifiers.length; ++j) {
      document.getElementById(AreaIdentifiers[j] + '_top').checked = true;
      AllChilds = document.getElementById(AreaIdentifiers[j] + '_details').getElementsByTagName('input');
      for (var k = 0; k < AllChilds.length; ++k) {
        AllChilds[k].checked = true;
      }
    }
  }
}

function calcSFormHeight() {
  alert(document.getElementById('sform').offsetHeight);
}

function searchinit() {
  determineresolution();
  registerEvents();
  qafocus();
  window.onsubmit = checkCheckboxes;
  changesodheight();
}

////////////////////////////////////////////////////////////
// RESULTS
////////////////////////////////////////////////////////////

function rchangecolor(srow) {
	if (actsatznummer != srow){
	 document.getElementById(srow).style.background = '#EBEDFB';
	}
}
function rchangeback(srow) {
	if (actsatznummer != srow){
		document.getElementById(srow).style.background = '#FFFFFF';
	}
	else {
    rchangecolorclick(srow);
  }
}
function rchangecolorclick(srow) {
  document.getElementById(srow).style.background = '#C6CBDB';
}

function resultsmaxmin() {

  if ((typeof aktiv == 'undefined') || (!(aktiv > 0))) {
    var tempHeight=top.document.getElementById("mainframes").rows.split(',');
    th = tempHeight[2].substring(0,tempHeight[2].length-1);
    framedifference = 3;
    if (th < 20) {
      //top.document.getElementById("mainframes").rows = '34, 45%,55%';
      aktiv = window.setInterval("resultsmin()", 20);
      document.getElementById('minmax').src='images/maximize.gif';
      //document.getElementById('minmax').alt='Maximize';
      maxmintooltiptext = 'Maximize';
    }
    else {
      //top.document.getElementById("mainframes").rows = '34,100%,0%';
      oh = th;
      aktiv = window.setInterval("resultsmax()", 20);
      document.getElementById('minmax').src='images/shrink.gif';
      //document.getElementById('minmax').alt='Restore Down';
      maxmintooltiptext = 'Restore Down';
    }
  }
}

function resultsmax() {
  var nbh = th-framedifference;

  if (nbh <= 0) {
    nbh = 0;
  }
  var nth = 100-nbh;

  top.document.getElementById("mainframes").rows = '34,' + nth + '%,' + nbh + '%';
  
  if (nbh == 0) {
    window.clearInterval(aktiv);
    aktiv = '';
  }
  else {
    framedifference = framedifference + 3;
  }
}
function resultsmin() {
  var nbh = 0+framedifference;
  if (nbh >= oh) {
    nbh = oh;
  }
  var nth = 100-nbh;

  top.document.getElementById("mainframes").rows = '34,' + nth + '%,' + nbh + '%';
  
  if (nbh == oh) {
    window.clearInterval(aktiv);
    aktiv = '';
  }
  else {
    framedifference = framedifference + 3;
  }
}

/////////////////////////////////////////////////// QADF / E-Mail Tables
///////////////////////////////////////////////////

function setECDirect() {
  
  // Wenn's zwei Tabellen gibt
  if ((document.getElementById('uppertd')) && (document.getElementById('lowertd'))) {
    var targetH; 
    if (ecstate == 'middle') {
      targetH = (getframeheight() - frameborderdistance) / 2; // Halbe-Halbe
    }
    else if (ecstate == 'top') {
      targetH = captionheader; // Ganz oben
    }
    else {
      targetH = getframeheight() - frameborderdistance - captionheader; // Ganz unten
    }
  }
  
  // Wenn's nur eine Tabelle gibt
  else {
    targetH = getframeheight() - frameborderdistance;
  }
  
  seth(targetH);
}

function switchTable(TableName) {

  if ((typeof active == 'undefined') || (!(active > 0))) {
    var targetH;
    if (ecstate == 'middle') {
      if (TableName == 'upper') {
        targetH = getframeheight() - frameborderdistance - captionheader;
        ecstate = 'bottom';
        document.getElementById('upperswitcherimg').src='images/minus.gif';
        qadftooltiptext = 'Collapse Tree';
      }
      else {
        targetH = captionheader;
        ecstate = 'top';
        document.getElementById('lowerswitcherimg').src='images/minus.gif';
        emailtooltiptext = 'Collapse Tree';
      }
    }
    else if (ecstate == 'top') {
      if (TableName == 'upper') {
        targetH = getframeheight() - frameborderdistance - captionheader;
        ecstate = 'bottom';
        document.getElementById('upperswitcherimg').src='images/minus.gif';
        qadftooltiptext = 'Collapse Tree';
        document.getElementById('lowerswitcherimg').src='images/plus.gif';
        qadftooltiptext = 'Expand Tree';
      }
      else {
        targetH = (getframeheight() - frameborderdistance) / 2;
        ecstate = 'middle';
        document.getElementById('lowerswitcherimg').src='images/plus.gif';
        qadftooltiptext = 'Expand Tree';
      }
    }
    else {
      if (TableName == 'upper') {
        targetH = (getframeheight() - frameborderdistance) / 2;
        ecstate = 'middle';
        document.getElementById('upperswitcherimg').src='images/plus.gif';
        qadftooltiptext = 'Expand Tree';
      }
      else {
        targetH = captionheader;
        ecstate = 'top'
        document.getElementById('upperswitcherimg').src='images/plus.gif';
        qadftooltiptext = 'Collapse Tree';
        document.getElementById('lowerswitcherimg').src='images/minus.gif';
        qadftooltiptext = 'Collapse Tree';
      }
    }
  
    active = window.setInterval("setECSmooth(" + targetH + ");", 25);
    
  }
}

function setECSmooth(targetH) {

  var newH;
  var t=0;
  
  if (targetH > currentH) {
    newH = currentH + 17;
    if (newH >= targetH) {
      newH = targetH;
      window.clearInterval(active); active = '';
    }
  }
  else if (targetH < currentH) {
    newH = currentH - 15;
    if (newH <= targetH) {
      newH = targetH;
      window.clearInterval(active); active = '';
    }
  }
  
  seth(newH);

}

function seth(h) {
  
  var t=0;
  
  frameHeight = getframeheight();
	frameHeight -= frameborderdistance; // Sicherheitsabstand
	
	// Layer wieder sichtbar machen... nicht 100% sicher, aber vermutlich stimmt's. Nötig, damit *inin erkannt wird.
	if (document.getElementById('lowertd')) {  // Nur, wenn lowertd existiert... sonst ist das sicher nie hidden.
  	if (h > 0) {
  		document.getElementById('upperin').style.display = '';
  	}
  	if (frameHeight - h > 0) {
  		document.getElementById('lowerin').style.display = '';
  	}
  }

	// Set outer - space needed depends on content
	var upperininheight = document.getElementById('upperinin').offsetHeight;
	if (document.getElementById('lowertd')) {
  	var lowerininheight = document.getElementById('lowerinin').offsetHeight;
  } else {
    var lowerininheight = 0;
  }
			
	var upperouter; var lowerouter; 
	
	if (upperininheight < h - partheader) {	// Wenn oberer Text kleiner als Platz...
		upperouter = upperininheight + partheader; // ...dann kriegt der obere Layer weniger
		lowerouter = frameHeight - upperouter; t = 1;  // ...und der untere mehr.
		
    if ((typeof active != 'undefined') || (active > 0)) {  // Übergang abschalten, falls vorhanden
		  window.clearInterval(active); active = '';
		}
	} else { // Wenn Platz nicht ausreicht...
		upperouter = h; // ...riegt er genau so viel wie zugewiesen.
	}
	if (((lowerininheight < frameHeight - h - partheader) && (t==0)) || ((lowerininheight < lowerouter-partheader) && (t==1))) { // Wenn unterer Text kleiner als Platz (entweder normal oder oben zugewiesen)
		lowerouter = lowerininheight + partheader; // ...dann wird er auch verkleinert
		if ((typeof active != 'undefined') || (active > 0)) {  // Übergang abschalten, falls vorhanden
		  window.clearInterval(active); active = '';
		}
		if (upperininheight > upperouter - partheader) { // Falls nun der Obere eigentlich zu wenig Platz hat...
			if (frameHeight - lowerouter > upperininheight) {
				upperouter = upperininheight;
			} else {
				upperouter = frameHeight - lowerouter;
			}
		}
	} else if (t == 0) { 
		lowerouter = frameHeight - h;
	}

	// Get inner height
	if (upperouter - partheader >= 0) { var upperinheight = upperouter - partheader; } else { var upperinheight = 0; }
	if (lowerouter - partheader >= 0) { var lowerinheight = lowerouter - partheader; } else { var lowerheight = 0; }
	
	// Set everything and hide as needed
 	if (upperouter >= partheader) { 
    document.getElementById('uppertableheader').style.display = '';
    document.getElementById('upperin').style.display = '';
    document.getElementById('upperin').style.height = upperinheight + 'px';
  } else {
    document.getElementById('uppertableheader').style.display = 'none'; 
    document.getElementById('upperin').style.display = 'none';
  }
  if (document.getElementById('lowertd')) { // Nur, wenn lower existiert
   	if (lowerouter >= partheader) { 
      document.getElementById('lowertableheader').style.display = '';
      document.getElementById('lowerin').style.display = '';
      document.getElementById('lowerin').style.height = lowerinheight + 'px';
    } else {
      document.getElementById('lowertableheader').style.display = 'none';
      document.getElementById('lowerin').style.display = 'none';
    }
  }
  	
	currentH = upperouter;
	
}



////////////////////////////////////////////////////////////
// DETAILS
////////////////////////////////////////////////////////////

function searchtext() {
  var str = document.getElementById('searchtextinput').value;
  
  if (str.length > 0) {
    var strFound;
  
  
   if (self.find) {
    if (TRange == null) {
      TRange = 1;
      document.getElementById('searchtextinput').value = '';
    }
    strFound=self.find(str);
    
    if (strFound) {
      totfinds++;
      document.getElementById('searchtextimg').src = 'images/searcharrow.png';
      textsearchtooltip = 'Next Hit';
    }
    else {
      document.getElementById('searchtextimg').src = 'images/searchtext.gif';
      textsearchtooltip = 'Search';
      if (totfinds == 0) {
        alert("Nothing found");
      }
      else {
        var answer = confirm("String '"+str+"' not found! Restart at beginning of document?");
        if (answer) {
           document.getElementById('searchtextinput').focus();
           TRange = null;
           totfinds = 0;
           searchtext();
        }
      }
    }
    document.getElementById('searchtextinput').value = str; 
    
   }
   else {
    if (TRange!=null) {
     TRange.collapse(false);
     strFound=TRange.findText(str);
     if (strFound) TRange.select();
    }
    else {
     TRange=self.document.body.createTextRange();
     strFound=TRange.findText(str);
     if (strFound) {
      TRange.select();
      totfinds++;
      document.getElementById('searchtextimg').src = 'images/searcharrow.png';
      textsearchtooltip = 'Next Hit';
     }
    }
    if (strFound==0) {
      document.getElementById('searchtextimg').src = 'images/searchtext.gif';
      textsearchtooltip = 'Search';
      if (totfinds != 0) {
       var answer = confirm("String '"+str+"' not found! Restart at beginning of document?");
       if (answer) {
          totfinds = 0;
          TRange=self.document.body.createTextRange();
          strFound=TRange.findText(str);
          if (strFound) TRange.select();
        }  
      }
      else {
        alert("Nothing found");
      }
    }
   }
  }
  else {
    alert('Please enter a search string!');
  }
}

function dchangecolor(srow) {
	parent.topright.document.getElementById(srow).style.background = '#C6CBDB';
	parent.topright.actsatznummer = srow;
}
function dchangeback(srow) {
	parent.topright.document.getElementById(srow).style.background = '#FFFFFF';
}
function golink(url) {
  parent.location.href = url;
}
function init(){

  maxmintooltiptext = '';
  textsearchtooltip = 'Search';

  if (parent.bottom) {
	 parent.bottom.focus();
	}
	if (document.getElementById('detailcontent')) {
    document.getElementById('detailcontent').focus();
  }
  if(document.captureEvents)
    document.captureEvents(Event.KEYDOWN | Event.KEYUP);
    
  document.onkeydown = keyDown;
  document.onkeyup = keyUp;

  // Minmax-Icon  
  var tempHeight=top.document.getElementById("mainframes").rows.split(',');
  th = tempHeight[1].substring(0,tempHeight[1].length-1);

  var minmaxicon = document.getElementById('minmax');
  if (minmaxicon) {
    minmaxicon.onclick = detailmaxmin;
    if (th > 20) {
      minmaxicon.src='images/maximize.gif';
      maxmintooltiptext = 'Maximize';
      
    }
    else {
      minmaxicon.src='images/shrink.gif';
      maxmintooltiptext = 'Restore Down';
    }
  }
  
  // For search function
   if ((self.find) || (self.document.body.createTextRange)) {
    TRange = null;
    totfinds = 0;
  }
  else {
    document.getElementById('searchtextspan').style.display = 'none';
  }
  
  detailcontentheight();
  window.onresize = detailcontentheight;  
  
  if (document.getElementById('editlinks')) {
    determineLogin();
  }
  
// detailcontent
  
}

function detailmaxmin() {
  if ((typeof aktiv == 'undefined') || (!(aktiv > 0))) {
    var tempHeight=top.document.getElementById("mainframes").rows.split(',');
    th = tempHeight[1].substring(0,tempHeight[1].length-1);
    framedifference = 3;
    if (th < 20) {
      //top.document.getElementById("mainframes").rows = '34, 45%,55%';
      if (typeof oh == 'undefined') {
        oh = 45;
      }
      aktiv = window.setInterval("detailmin()", 20);
      document.getElementById('minmax').src='images/maximize.gif';
      maxmintooltiptext = 'Maximize';
    }
    else {
      //top.document.getElementById("mainframes").rows = '34,0%,100%';
      oh = th;
      aktiv = window.setInterval("detailmax()", 20);
      document.getElementById('minmax').src='images/shrink.gif';
      maxmintooltiptext = 'Restore Down';
    }
  }
}
function detailmax() {
  var nth = th-framedifference;

  if (nth <= 0) {
    nth = 0;
  }
  var nbh = 100-nth;

  top.document.getElementById("mainframes").rows = '34,' + nth + '%,' + nbh + '%';
  
  if (nth == 0) {
    window.clearInterval(aktiv);
    aktiv = '';
  }
  else {
    framedifference = framedifference + 3;
  }
}
function detailmin() {
  var nth = 0+framedifference;
  if (nth >= oh) {
    nth = oh;
  }
  var nbh = 100-nth;

  top.document.getElementById("mainframes").rows = '34,' + nth + '%,' + nbh + '%';
  
  if (nth == oh) {
    window.clearInterval(aktiv);
    aktiv = '';
  }
  else {
    framedifference = framedifference + 3;
  }
}

function detailcontentheight() {
  
  var actualheight;

    var frameHeight = getframeheight();
    
    if (document.getElementById('detailcontentinner') != null) {
      actualheight = document.getElementById('detailcontentinner').offsetHeight;
    }
    else {
      actualheight = 9999;
    }
    
    if (document.getElementById('detailcontent') != null) {
      var ddtop = getpos(document.getElementById('detailcontent'));
      var browserName=navigator.appName;
      if (browserName == 'Microsoft Internet Explorer') {
        var newdivheight = frameHeight - ddtop - 10;
      } else {
        var newdivheight = frameHeight - ddtop - 30;
      }
      
      if (actualheight < newdivheight) {
        newdivheight = actualheight + 5;
      }
      if (newdivheight > 0) {
        document.getElementById('detailcontent').style.height = newdivheight + 'px';
      }
    }
}

function openattachment(id, realname) {
  popup('download.cgi?email_attachments/'+id+'|'+realname, 500, 700);
}

function determineLogin() {
             
     //erstellen des requests
     var req = null;

    try{
        req = new XMLHttpRequest();
    }
    catch (ms){
        try{
            req = new ActiveXObject("Msxml2.XMLHTTP");
        } 
        catch (nonms){
            try{
                req = new ActiveXObject("Microsoft.XMLHTTP");
            } 
            catch (failed){
                req = null;
            }
        }  
    }

    if (req == null)
          alert("Error creating request object!");
      
      //anfrage erstellen (GET, url ist localhost,
      //request ist asynchron      
      req.open("GET", 'editemails.php?task=getrights', true);

    //Beim abschliessen des request wird diese Funktion ausgeführt
    req.onreadystatechange = function(){            
        switch(req.readyState) {
                case 4:
                if(req.status!=200) {
                    
                }else{    
                    //schreibe die antwort in den div container mit der id content 
                    if (req.responseText == 1) {
                      document.getElementById('editlinks').style.display = 'inline';
                    }
                }
                break;
        
                default:
                    return false;
                break;     
            }
        };

      req.setRequestHeader("Content-Type",
                          "application/x-www-form-urlencoded");
    req.send(null);
    
}

function getpos(obj) {
	var curtop = 0;
  if (obj.offsetParent) {
	do {
	 curtop += obj.offsetTop;
  } while (obj = obj.offsetParent);
  }
  return curtop;
}

function keyUp(evt){
  var e = evt || window.event;
  var ch='';

 	if(e.keyCode>0) {
      ch=e.keyCode;
      if ((ch == 38) || (ch == 40)) {
        clearTimeout(timer);
      }
  }

  return true;
}

function scrollDiv(val){ 
  clearTimeout(timer); 
  d=document.getElementById('detailcontent') 
  y=d.scrollTop; 
  if(val==1)y-=px; 
  if(val==2)y+=px; 
  if(y<=d.scrollHeight-d.offsetHeight+px&&y>=0-px){ 
  d.scrollTop=y; 
  timer=setTimeout('scrollDiv('+val+')',50); 
  } 
  if(y<0||y>d.scrollHeight-d.offsetHeight){ 
  clearTimeout(timer); 
  } 
} 


//////////////////////////////////////
// Trash
//////////////////////////////////////
function middletableheight() {

  if ((document.getElementById('qadftable')) && (document.getElementById('emailtable'))) {
    // Get qadf table size
    var frameheight = getframeheight();
    var qadfpos = getpos(document.getElementById('qadftable'));
      if (qadfpos == 0) { qadfpos = 42; }
    var totalspace = frameheight-qadfpos+16-8; // die 16 sind für'n Link oberhalb, die 8 für den Rand ganz unten
    middleqadftablesize = (totalspace/2-11) - 16 - 19 // die 11 sind für'n Rand, die 19 für'n Table Header
    fulltablesize = frameheight - qadfpos - 8 - 19 - 30; // 7: Rand; 30: E-Mail Link noch sichtbar
    qadfinnerheight = getobjectheight('tablecontentqadfinner');
    if (qadfinnerheight < middleqadftablesize) {
      middleqadftablesize = qadfinnerheight;
    }
    if (ctablesize != 0) {
      document.getElementById('tablecontentqadf').style.height = middleqadftablesize + 'px';
      if (etable == 'qadf') { etablesize = middleqadftablesize; } else if (etable == 'email') { ctablesize = middleqadftablesize; }
    }
    
    // Get email table size
    
    middleemailtablesize = frameheight - (qadfpos + middleqadftablesize+19+53+7);
    emailinnerheight = getobjectheight('tablecontentemailinner');
    if (emailinnerheight < middleemailtablesize) {
      middleemailtablesize = emailinnerheight;
    }
    if (ctablesize != 0) {
      document.getElementById('tablecontentemail').style.height = middleemailtablesize + 'px';
      if (etable == 'email') { etablesize = middleemailtablesize; } else if (etable == 'qadf') { ctablesize = middleemailtablesize; }
    }
    
    var bottomtablepos = getpos(document.getElementById('bottomtablepos'));
    bothtablesize = middleqadftablesize + middleemailtablesize;
    
    if (ctablesize == 0) {
      document.getElementById('tablecontent' + etable).style.height = fulltablesize + 'px';
      document.getElementById('tablecontent' + ctable).style.height = '0px';
      etablesize = fulltablesize;
      ctablesize = 0;
    }
  }
  // Nur eine Tabelle
  else if (document.getElementById('qadftable')) {
    var frameheight = getframeheight();
    document.getElementById('tablecontentqadf').style.height = frameheight - 80 + 'px';
  }
  else if (document.getElementById('emailtable')) {
    var frameheight = getframeheight();
    document.getElementById('tablecontentemail').style.height = frameheight - 80 + 'px';
  }
  //document.getElementById('tempdiv').innerHTML = frameheight + "," + qadfpos + "<br>" + fulltablesize + "/" + bothtablesize + ": " + etable + " - " + etablesize + " | " + ctable + " - " + ctablesize;
  
}

function restoreTables() {
  etablesize += 20;
  ctablesize = bothtablesize-etablesize;
  
  var tmes = eval('middle' + etable + 'tablesize');
  var tmcs = eval('middle' + ctable + 'tablesize');
  
  if (etablesize > tmes) {
    etablesize = tmes;
  }
  if (ctablesize < tmcs) {
    ctablesize = tmcs;
  }
  
  if (etablesize == 20) {
      document.getElementById(etable + 'table').style.display = '';  
  }
  
  document.getElementById('tempdiv').innerHTML = fulltablesize + "/" + bothtablesize + ": " + etable + " - " + etablesize + " | " + ctable + " - " + ctablesize;
  
  document.getElementById('tablecontent' + etable).style.height = etablesize + 'px';
  document.getElementById('tablecontent' + ctable).style.height = ctablesize + 'px';
  
  if ((etablesize == tmes) && (ctablesize == tmcs)) {
    document.getElementById(ctable + 'switcherimg').src = 'images/plus.gif';
    document.getElementById(etable + 'switcherimg').src = 'images/plus.gif';
    emailtooltiptext = 'Expand Tree';
    qadftooltiptext = 'Expand Tree';
    window.clearInterval(active);
    active = '';  
  }
  
}

function expandTable() {
  etablesize += 20;
  if (etablesize > fulltablesize) {
    etablesize = fulltablesize;
  }
  
  var etableinner = eval(etable + 'innerheight');
  if (etablesize > etableinner) { 
    etablesize = etableinner;
  }
  ctablesize = bothtablesize-etablesize;
  if (ctablesize < 0) {
    ctablesize = 0;
    document.getElementById(ctable + 'table').style.display = 'none';
  }
  
  if (etablesize == 20) {
    document.getElementById(etable + 'table').style.display = '';  
  }
  
  document.getElementById('tempdiv').innerHTML = fulltablesize + "/" + bothtablesize + ": " + etable + " - " + etablesize + " | " + ctable + " - " + ctablesize;
  
  if (document.getElementById('tablecontent' + etable)) {
    document.getElementById('tablecontent' + etable).style.height = etablesize + 'px';
  }
  if (document.getElementById('tablecontent' + ctable)) {
    document.getElementById('tablecontent' + ctable).style.height = ctablesize + 'px';
  }

  
  if ((ctablesize == 0) && ((etablesize == fulltablesize) || (etablesize == etableinner))) {
    document.getElementById(ctable + 'switcherimg').src = 'images/plus.gif';
    document.getElementById(etable + 'switcherimg').src = 'images/minus.gif';
    eval(ctable + 'tooltiptext = \'Expand Tree\';');
    eval(etable + 'tooltiptext = \'Collapse Tree\';');
    window.clearInterval(active);
    active = '';
  }
  
}

function temp_switchTable(TableName) {

  if ((typeof active == 'undefined') || (!(active > 0))) {
  var TTable = document.getElementById(TableName + 'table');
  var CurrentQADFTableHeight=document.getElementById('tablecontentqadf').style.height;
  CurrentQADFTableHeight = CurrentQADFTableHeight.replace(/px/, "");
  
  // Wenn Mittelposition oder ctable wird vergrössert
  if ((CurrentQADFTableHeight == middleqadftablesize) || ((TableName == ctable) && (ctablesize == 0))) {
    
    if (TableName == 'qadf') { etable = 'qadf'; ctable = 'email'; }
    else { etable = 'email'; ctable = 'qadf'; }
      
    if (CurrentQADFTableHeight == middleqadftablesize) {  // Mitte
      etablesize = eval('middle' + etable + 'tablesize');
      ctablesize = eval('middle' + ctable + 'tablesize');
    }
    else { // Nicht Mitte
      var tes = etablesize;
      etablesize = ctablesize;
      ctablesize = tes;
    }
    active = window.setInterval("expandTable()", 30);
  }
  // Restore Table: Back to middle
  else {
    if (TableName == 'qadf') { etable = 'email'; ctable = 'qadf'; }
    else { etable = 'qadf'; ctable = 'email'; }
    
       var tes = etablesize;
       etablesize = ctablesize;
       ctablesize = tes;
  
    active = window.setInterval("restoreTables()", 30);
  }
  
  }
  
}

function getobjectheight(obj) {
    // Get inner height in case it's smaller than frame
    if (document.getElementById(obj) != null) {
      actualheight = document.getElementById(obj).offsetHeight;
    }
    else {
      actualheight = 9999;
    }
    return actualheight;
}

function goooominimize() {
  if ((typeof aktiv == 'undefined') || (!(aktiv > 0))) {
    var tempHeight=top.document.getElementById("mainframes").rows.split(',');
    th = tempHeight[2].substring(0,tempHeight[2].length-1);
    framedifference = 3;
    if (th < 20) {
      //top.document.getElementById("mainframes").rows = '34, 45%,55%';
      aktiv = window.setInterval("resultsmin()", 20);
      document.getElementById('minmax').src='images/maximize.gif';
      document.getElementById('minmax').alt='Maximize';
      maxmintooltiptext = 'Maximize';
    }
  }
}
