var DHTML = false, DOM = false, MSIE4 = false, NS4 = false, OP = false, GECKO=false;
var SAFARI = false;
var mywindow = '';
var mywindow_width  = 440;
var mywindow_height = 550;

if (document.getElementById) {
  DHTML = true;
  DOM = true;
} else {
  if (document.all) {
    DHTML = true;
    MSIE4 = true;
  } else {
    if (document.layers) {
      DHTML = true;
      NS4 = true;
    }
  }
}
if (window.opera) {
  OP = true;
}
if( navigator.userAgent.toLowerCase().indexOf("safari") != -1) {
  SAFARI = true;
}
if( (navigator.userAgent.toLowerCase().indexOf("gecko") != -1) && (navigator.userAgent.toLowerCase().indexOf("konqueror") == -1)) {
  GECKO = true;
}


function getElement (Mode, Identifier, ElementNumber) {
  var Element;
  if (DOM) {
    if (Mode.toLowerCase() == "id") {
      if (typeof document.getElementById(Identifier) == "object") {
        Element = document.getElementById(Identifier);
      } else {
        Element = false;
      }
      return Element;
    }
    if (Mode.toLowerCase() == "name") {
      var ElementList = document.getElementsByName(Identifier);
      if (typeof ElementList == "object" || (OP && typeof ElementList == "function")) {
        Element = ElementList[ElementNumber];
      } else {
        Element = false;
      }
      return Element;
    }
    if (Mode.toLowerCase() == "tagname") {
      var ElementList = document.getElementsByTagName(Identifier);
      if (typeof ElementList == "object" || (OP && typeof ElementList == "function")) {
        Element = ElementList[ElementNumber];
      } else {
        Element = false;
      }
      return Element;
    }
    return null;
  }
  if (MSIE4) {
    if (Mode.toLowerCase() == "id") {
      if (typeof document.all[Identifier] == "object") {
        Element = document.all[Identifier];
      } else {
        Element = false;
      }
      return Element;
    }
    if (Mode.toLowerCase() == "tagname") {
      if (typeof document.all.tags(Identifier) == "object") {
        Element = document.all.tags(Identifier)[ElementNumber];
      } else {
        Element = false;
      }
      return Element;
    }
    if (Mode.toLowerCase() == "name") {
      if (typeof document[Identifier] == "object") {
        Element = document[Identifier];
      } else {
        Element = false;
      }
      return Element;
    }
    return false;
  }
  if (NS4) {
    if (Mode.toLowerCase() == "id" || Mode.toLowerCase() == "name") {
      if (typeof document[Identifier] == "object") {
        Element = document[Identifier];
      } else {
        Element = false;
      }
      return Element;
    }
    if (Mode.toLowerCase() == "index") {
      if (typeof document.layers[Identifier] == "object") {
        Element = document.layers[Identifier];
      } else {
        Element = false;
      }
      return Element;
    }
    return false;
  }
  return false;
}

function getContent (Mode, Identifier, ElementNumber) {
  var Content;
  var Element = getElement(Mode, Identifier, ElementNumber);
  if (!Element) {
    return false;
  }
  if (DOM && Element.firstChild) {
    if (Element.firstChild.nodeType == 3) {
      Content = Element.firstChild.nodeValue;
    } else {
      Content = "";
    }
    return Content;
  }
  if (MSIE4) {
    Content = Element.innerText;
    return Content;
  }
  return false;
}

function getAttribute (Mode, Identifier, ElementNumber, AttributeName) {
  var Attribute;
  var Element = getElement(Mode, Identifier, ElementNumber);
  if (!Element) {
    return false;
  }
  if (DOM || MSIE4) {
    Attribute = Element.getAttribute(AttributeName);
    return Attribute;
  }
  if (NS4) {
    if (typeof Element[ElementNumber] == "object") {
      Attribute = Element[ElementNumber][AttributeName];
    } else {
      Attribute = Element[AttributeName]
    }
    return Attribute;
  }
  return false;
}

function setContent (Mode, Identifier, ElementNumber, Text) {
  var Element = getElement(Mode, Identifier, ElementNumber);
  if (!Element) {
    return false;
  }
  if (DOM && Element.firstChild) {
    Element.firstChild.nodeValue = Text;
    return true;
  }
  if (MSIE4) {
    Element.innerText = Text;
    return true;
  }
  if (NS4) {
    Element.document.open();
    Element.document.write(Text);
    Element.document.close();
    return true;
  }
}

function RollOverLink_preloadImages( a ) 
{ //v3.0       
    var d=document; 
    if(d.images) { 
        if(!d.RollOverLink_p) 
            d.RollOverLink_p = new Array(); 
        var i,j = d.RollOverLink_p.length; 
        for(i=0; i < a.length; i++) { 
            if (a[i].indexOf('#') != 0) { 
                d.RollOverLink_p[j] = new Image; 
                d.RollOverLink_p[j++].src = a[i];
            }
        }
    } 
} 
function RollOverLink_swapImgRestore() 
{ //v3.0 
    var i,x,a = document.RollOverLink_sr; 
    for(i=0; a && i < a.length && (x = a[i]) && x.oSrc; i++) 
        x.src = x.oSrc; 
} 
function RollOverLink_findObj(n, d)  
{ //v3.0 
    var p,i,x;  
    if(!d) 
        d = document; 
    if((p = n.indexOf('?')) > 0 && parent.frames.length) { 
        d = parent.frames[n.substring(p+1)].document; 
        n = n.substring(0,p);
    } 
    if(!(x = d[n]) && d.all) 
        x = d.all[n]; 
    for (i=0; ! x && i < d.forms.length; i++) 
        x = d.forms[i][n]; 
    for(i=0; !x && d.layers && i < d.layers.length; i++) 
        x = RollOverLink_findObj(n,d.layers[i].document); 
    return x; 
} 
function RollOverLink_swapImage() 
{ //v3.0 
    var i,j = 0,x,a = RollOverLink_swapImage.arguments; 
    document.RollOverLink_sr = new Array; 
    for(i=0; i < (a.length -2); i += 3)  {
        if(( x = RollOverLink_findObj(a[i])) != null) {
            document.RollOverLink_sr[j++] = x; 
            if(!x.oSrc) 
                x.oSrc = x.src; 
            x.src = a[i+2];
        } 
    }
} 

function rolloverServerControl_display(imgName, imgUrl) {
    var fld;
    fld = document.getElementById(imgName);
    fld.src = imgUrl.src;
/*        if (document.images && typeof imgUrl != 'undefined')
                document[imgName].src = imgUrl.src;*/
}


function open_window( url ) 
{
    if(mywindow && !mywindow.closed && mywindow.location) {
        goTo( url );
        mywindow.focus();
    } else {
        mywindow = window.open( url, '',
            'toolbar=0,location=0,directories=0,status=1,menubar=0,' +
            'scrollbars=yes,resizable=yes,' +
            'width=' + mywindow_width + ',' +
            'height=' + mywindow_height );
    }

    if ( ! mywindow.opener ) {
       mywindow.opener = window.window;
    }

    if ( window.focus ) {
        mywindow.focus();
    }

    return true;
}

/**
 * opens new url in mywindow
 *
 * @param    string    targeturl    new url to load
 */
function goTo( targeturl ) 
{
    var target = mywindow;
    if ( target.location.href == targeturl ) {
        return true;
//     } else if ( target.location.href == pma_absolute_uri + targeturl ) {
//         return true;
    }

    if ( SAFARI ) {
        target.location.href = targeturl;
    } else {
        target.location.replace(targeturl);
    }

    return true;
}

