//===============================================================================
// Name:     xdoc.js
// Purpose:  Collection of functions for document and window.
// Version:  1.5.1
// Date:     2006-05-18
// Author:   X. Jian
// Usage:
//      <script language='JavaScript' src='scripts/xdoc.js'></script>
//===============================================================================

var AgntUsr=navigator.userAgent.toLowerCase();
var IsDOM=document.getElementById?1:0;
var IsNN=AgntUsr.indexOf('mozilla')!=-1&&AgntUsr.indexOf('compatible')==-1?1:0;
var IsNN4=IsNN&&!IsDOM&&document.layers?1:0;
var IsNN6=IsDOM&&!document.all?1:0;
var IsIE=AgntUsr.indexOf('msie')!=-1?1:0;
var IsIE4=IsIE&&!IsDOM&&document.all?1:0;
var IsIE50=AgntUsr.indexOf('msie 5.0')!=-1?1:0;
var IsMac=(navigator.platform == "MacPPC")?1:0;
var IsFF=AgntUsr.match(/Firefox/i)? true : false;
var IsFF1_5=AgntUsr.match(/Firefox\/1.5/i)? true : false;
var DocX = 0;
var DocY = 0;
var ScrollX = 0; 
var ScrollY = 0;
var WinX = 0;
var WinY = 0;
var WinW;
var WinH;
if (IsNN4) document.captureEvents(Event.MOUSEMOVE);
document.onmousemove = xPos;
function xPos(e) {
  if (!IsIE) {
     ScrollX = window.pageXOffset;
     ScrollY = window.pageYOffset;
     DocX = e.pageX;
     DocY = e.pageY;
	  WinX = DocX - ScrollX;
	  WinY = DocY - ScrollY;
  }
  if (IsIE) {
    if (document.documentElement && document.documentElement.scrollTop) {
		 ScrollY = document.documentElement.scrollTop;
	 }
    else {
       ScrollY  = document.body.scrollTop;
    }
    if (document.documentElement && document.documentElement.scrollLeft) {
	    ScrollX = document.documentElement.scrollLeft;
	 }
    else {
       ScrollX = document.body.scrollLeft;
    }
	 WinX = window.event.clientX;
	 WinY = window.event.clientY;
    DocX = window.event.clientX + ScrollX;
    DocY = window.event.clientY + ScrollY;
  }
  return true;
}
function getWinWH(theWin) {
  theWin = (theWin)? theWin : window;
  if (IsIE) {
	  if (document.documentElement && theWin.document.documentElement.clientWidth) {
        WinW =  theWin.document.documentElement.clientWidth;
	  }
	  else {
        WinW =  theWin.document.body.clientWidth;
	  }
	  if (document.documentElement && theWin.document.documentElement.clientHeight) {
        WinH  = theWin.document.documentElement.clientHeight;
	  }
	  else {
        WinH  = theWin.document.body.clientHeight;
	  }
  }
  else if (IsNN) {
     WinW = theWin.innerWidth
     WinH = theWin.innerHeight
  }
  else {
    WinW = (IsNN)?theWin.innerWidth:theWin.document.body.clientWidth;
    WinH  = (IsNN)?theWin.innerHeight:theWin.document.body.clientHeight;
  }
  return new Array(WinW, WinH);
}
function baseHREF(baseID) {
   baseID = (baseID)? baseID : 'rtqw_base';
   if (IsDOM) {
      var base = window.document.getElementById(baseID);
      if (base == null) {
         var bases = window.document.getElementsByTagName("base")
         base = (bases.length >=1)? bases[0] : null;
      }
      return (base != null)? base.href : '';
   }
   return '';
}
function docHREF() {
   var strURL = document.URL;
   var intPos = (IsIE && strURL.search(/file:/i) >=0)? strURL.lastIndexOf("\\") : strURL.lastIndexOf('/');
   var  strHREF = (intPos >= 0)? strURL.slice(0, intPos+1) : strURL
   return strHREF;
} 
function openURL(url, adjustURLByBase) {
   if (url.search(/^#/) == 0) {
      url = (document.URL).replace(/#.*/, '') + url
   }
   else if (url.search(/http:/i) < 0) {
      var strHREF = (adjustURLByBase)? baseHREF() : docHREF();
      url = strHREF + url
   }
   window.location.href = url
} 
//===============================================================================