function checkmainframe(url) {
   if (top == self) self.location.href = url;
 }
 
function breakframe() {
	if (top.location.href != location) 
	    top.location.href = document.location.href;
}


function runformaction(act,confirmtext) {
 window.document.forms[0].action=act;
 return confirm(confirmtext);
}

function setformaction(formnr,act) {
 if (window.document.forms[formnr]) window.document.forms[formnr].action=act;
 return true;     
}


function elembyname(aname,nr) {
 if (!nr) nr = 0;
 if (DOM)
  return window.document.getElementsByName(aname)[nr];
 else {
  anzelem=window.document.forms[0].elements.length;
  j=1;
  for (i=0; i<anzelem; i++) 
  if (window.document.forms[0].elements[i].name==aname) {
    if (!nr) return window.document.forms[0].elements[i];
     else if (nr == j) return window.document.forms[0].elements[i];
    j++; 
  }  
    return null;
 }   
}

  
function FormatNumber(Number,Decimals,Separator)
{
 // **********************************************************
 // Placed in the public domain by Affordable Production Tools
 // March 21, 1998
 // Web site: http://www.aptools.com/
 //
 // November 24, 1998 -- Error which allowed a null value
 // to remain null fixed. Now forces value to 0.
 //
 // October 28, 2001 -- Modified to provide leading 0 for fractional number
 // less than 1.
 //
 // This function accepts a number to format and number
 // specifying the number of decimal places to format to. May
 // optionally use a separator other than '.' if specified.
 //
 // If no decimals are specified, the function defaults to
 // two decimal places. If no number is passed, the function
 // defaults to 0. Decimal separator defaults to '.' .
 //
 // If the number passed is too large to format as a decimal
 // number (e.g.: 1.23e+25), or if the conversion process
 // results in such a number, the original number is returned
 // unchanged.
 // **********************************************************
 Number += "";          // Force argument to string.
 Decimals += "";        // Force argument to string.
 Separator += "";       // Force argument to string.
 if((Separator == "") || (Separator.length > 1))
  Separator = "."
 if(Number.length == 0)
  Number = "0"
 var OriginalNumber = Number  // Save for number too large.
 var Sign = 1
 var Pad = ""
 var Count = 0
 // If no number passed, force number to 0.
 if(parseFloat(Number)){
  Number = parseFloat(Number);} else {
  Number = 0;}
 // If no decimals passed, default decimals to 2.
 if((parseInt(Decimals,10)) || (parseInt(Decimals,10) == 0)){
  Decimals = parseInt(Decimals,10);} else {
  Decimals = 2;}
 if(Number < 0)
 {
  Sign = -1;         // Remember sign of Number.
  Number *= Sign;    // Force absolute value of Number.
 }
 if(Decimals < 0)
  Decimals *= -1    // Force absolute value of Decimals.
 // Next, convert number to rounded integer and force to string value.
 // (Number contains 1 extra digit used to force rounding)
 Number = "" + Math.floor(Number * Math.pow(10,Decimals + 1) + 5);
 if((Number.substring(1,2) == '.')||((Number + '')=='NaN'))
  return(OriginalNumber) // Number too large to format as specified.
 // If length of Number is less than number of decimals requested +1,
 // pad with zeros to requested length.
 if(Number.length < Decimals +1) // Construct pad string.
 {
  for(Count = Number.length; Count <= Decimals; Count++)
   Pad += "0";
 }
 Number = Pad + Number; // Pad number as needed.
 if(Decimals == 0){
  // Drop extra digit -- Decimal portion is formatted.
  Number = Number.substring(0, Number.length -1);} else {
  // Or, format number with decimal point and drop extra decimal digit.
 Number = Number.substring(0,Number.length - Decimals -1) +
          Separator +
          Number.substring(Number.length - Decimals -1,
          Number.length -1);}
 if((Number == "") || (parseFloat(Number) < 1))
  Number="0"+Number // Force leading 0 for |Number| less than 1.
 if(Sign == -1)
  Number = "-" + Number  // Set sign of number.
 return(Number)
}



/* DHTML-Bibliothek */

var DHTML = 0, DOM = 0, MS = 0, NS = 0, OP = 0;
function DHTML_init() {
 
 if (window.opera) {
     OP = 1;
 }

 if(document.getElementById) {
   DHTML = 1;
   DOM = 1;
 }


 if(document.all && !OP) {
   DHTML = 1;
   MS = 1;
 }
if (window.netscape && window.screen && !DOM && !OP){
   DHTML = 1;
   NS = 1;
 }
}



function getElem(p1,p2,p3,win) {
 var Elem;
 var w;
 if (win) w=win;
     else w=window;
 if(DOM) {
   if(p1.toLowerCase()=="id") {
     if (typeof w.document.getElementById(p2) == "object")
     Elem = w.document.getElementById(p2);
     else Elem = void(0);
     return(Elem);
   }
   else if(p1.toLowerCase()=="name") {
      
     if (typeof w.document.getElementsByName(p2) == "object")
     Elem = w.document.getElementsByName(p2)[p3];
     else Elem = void(0);
     return(Elem);
   }
   else if(p1.toLowerCase()=="tagname") {
     if (typeof w.document.getElementsByTagName(p2) == "object" ||
        (OP && typeof w.document.getElementsByTagName(p2) == "function"))
     Elem = w.document.getElementsByTagName(p2)[p3];
     else Elem = void(0);
     return(Elem);
   }
   else return void(0);
 }
 else if(MS) {
   if(p1.toLowerCase()=="id") {
     if (typeof w.document.all[p2] == "object")
     Elem = w.document.all[p2];
     else Elem = void(0);
     return(Elem);
   }
   else if(p1.toLowerCase()=="tagname") {
     if (typeof w.document.all.tags(p2) == "object")
     Elem = w.document.all.tags(p2)[p3];
     else Elem = void(0);
     return(Elem);
   }
   else if(p1.toLowerCase()=="name") {
     if (typeof w.document[p2] == "object")
     Elem = w.document[p2];
     else Elem = void(0);
     return(Elem);
   }
   else return void(0);
 }
 else if(NS) {
   if(p1.toLowerCase()=="id" || p1.toLowerCase()=="name") {
   if (typeof w.document[p2] == "object")
     Elem = w.document[p2];
     else Elem = void(0);
     return(Elem);
   }
   else if(p1.toLowerCase()=="index") {
    if (typeof w.document.layers[p2] == "object")
     Elem = w.document.layers[p2];
    else Elem = void(0);
     return(Elem);
   }
   else return void(0);
 }
}



function getCont(p1,p2,p3,win) {
   var Cont;
   if (win) w=win;
       else w=window;
     
   if(DOM && getElem(p1,p2,p3,w) && getElem(p1,p2,p3,w).firstChild) {
     if(getElem(p1,p2,p3,w).firstChild.nodeType == 3)
       Cont = getElem(p1,p2,p3,w).firstChild.nodeValue;
     else
       Cont = "";
     return(Cont);
   }
   else if(MS && getElem(p1,p2,p3,w)) {
     Cont = getElem(p1,p2,p3,w).innerText;
     return(Cont);
   }
   else return void(0);
}




function getAttr(p1,p2,p3,p4) {
   var Attr;
   if((DOM || MS) && getElem(p1,p2,p3)) {
     Attr = getElem(p1,p2,p3).getAttribute(p4);
     return(Attr);
   }
   else if (NS && getElem(p1,p2)) {
       if (typeof getElem(p1,p2)[p3] == "object")
        Attr=getElem(p1,p2)[p3][p4];
       else
        Attr=getElem(p1,p2)[p4];
         return Attr;
       }
   else return void(0);
}

function setCont(p1,p2,p3,p4,w) {
   if(!MS && DOM && getElem(p1,p2,p3,w) && getElem(p1,p2,p3,w).firstChild) {
     getElem(p1,p2,p3,w).firstChild.nodeValue = p4;   
   }  
   else
    if(MS && getElem(p1,p2,p3,w))
     getElem(p1,p2,p3,w).innerHTML = p4;
   else if(NS && getElem(p1,p2,p3,w)) {
     getElem(p1,p2,p3,w).document.open();
     getElem(p1,p2,p3,w).document.write(p4);
     getElem(p1,p2,p3,w).document.close();
   }
}


DHTML_init();


