
var WINDOW  = -1;
var TREE    = -2;
var ELEMENT = -3;
var MANAGER = -4;

var EVENT_SCROLL_LEFT   = 0;
var EVENT_SCROLL_DOWN   = 1;
var EVENT_SCROLL_UP     = 2;
var EVENT_SCROLL_RIGHT  = 3;

var _vawtId = 0;
var _vawtTag = 'vawtObj';

var _vawtTargets = new Array();
document.vawtWins = _vawtTargets;


function BrowserInfo() 
{
	var b = navigator.appName;
	if (b=="Netscape") 
    this.b = "ns";
	else if (b=="Microsoft Internet Explorer") 
    this.b = "ie";
	else 
    this.b = b;
	this.v = parseInt(navigator.appVersion);
  this.fv = parseFloat(navigator.appVersion); 
	this.ns = (this.b=="ns" && this.fv>=4.08);
	this.ns4 = (this.b=="ns" && this.v==4);
	this.ns5 = (this.b=="ns" && this.v==5);
	this.ie = (this.b=="ie" && this.v>=4);
	this.ie4 = (navigator.userAgent.indexOf('MSIE 4')>0);
	this.ie5 = (navigator.userAgent.indexOf('MSIE 5')>0);
	if (this.ie5) 
    this.v = 5;
  this.ViadorSupports = (this.ns || this.ie);
	this.min = (this.ns||this.ie);
  
  // *** Client OS and Version
  this.agt = navigator.userAgent.toLowerCase();
  this.is_win95 = ((this.agt.indexOf("win95")!=-1) || (this.agt.indexOf("windows 95")!=-1));
  this.is_win31 = ((this.agt.indexOf("windows 3.1")!=-1) || (this.agt.indexOf("win16")!=-1) ||
                    (this.agt.indexOf("windows 16-bit")!=-1));
  this.is_win98 = ((this.agt.indexOf("win98")!=-1) || (this.agt.indexOf("windows 98")!=-1));
  this.is_winnt = ((this.agt.indexOf("winnt")!=-1) || (this.agt.indexOf("windows nt")!=-1));
  this.is_os2   = ((this.agt.indexOf("os/2")!=-1) ||
                    (navigator.appVersion.indexOf("OS/2")!=-1) ||
                    (this.agt.indexOf("ibm-webexplorer")!=-1));
  this.is_mac    = (this.agt.indexOf("mac")!=-1);
  this.is_sun   = (this.agt.indexOf("sunos")!=-1);
  this.is_aix   = (this.agt.indexOf("aix") !=-1);
  
  this.sClientOSName = null;
  this.sClientOSVersion = null;
  if(this.is_win31)
  {
    this.sClientOSName = "Windows 3.1";
    this.sClientOSVersion = "1.0";
  }
  else if(this.is_win95)
  {
    this.sClientOSName = "Windows 95";
    this.sClientOSVersion = "1.0";
  }
  else if(this.is_win98)
  {
    this.sClientOSName = "Windows 98";
    this.sClientOSVersion = "1.0";
  }
  else if(this.is_winnt)
  {
    this.sClientOSName = "Windows NT";
    this.sClientOSVersion = "1.0";
  }
  else if(this.is_os2)
  {
    this.sClientOSName = "OS/2";
    this.sClientOSVersion = "1.0";
  }
  else if(this.is_mac)
  {
    this.sClientOSName = "Mac OS";
    this.sClientOSVersion = "1.0";
  }
  else if(this.is_sun)
  {
    this.sClientOSName = "Solaris";
    this.sClientOSVersion = "1.0";
  }
  else if(this.is_aix)
  {
    this.sClientOSName = "AIX";
    this.sClientOSVersion = "1.0";
  }
  
  this.getWindowHeight = _vuGetWindowHeight;
  this.getWindowWidth = _vuGetWindowWidth;  
}

function _vuGetWindowHeight()
{
  var iHeight = 550;
  if(is.ns)
    iHeight = screen.availHeight;
  else
    iHeight = window.screen.availHeight;
  return iHeight;
}

function _vuGetWindowWidth()
{
  var iWidth = 770;
  if(is.ns)
    iWidth = screen.availWidth;
  else
    iWidth = window.screen.availWidth;
  return iWidth;
}


is = new BrowserInfo();

function _checkWithin(x, y, left, right, top, bottom) 
{
  if (x>=left && x<=right && y>=top && y<=bottom) 
    return true;
  else 
    return false;
}

function _mergeLists(list1, list2)
{
  var tList = new Array;
  var iIndex = 0;
  var iSize = (list1 ? list1.length : 0);
  for(var i=0; i<iSize; i++)
    tList[i] = list1[i];
  iIndex = iSize;
  iSize = (list2 ? list2.length : 0);
  for(var i=0; i<iSize; i++)
    tList[iIndex++] = list2[i];
  return tList;
}

function formatMessage(sOrig, sArgs)
{
	var iIndex = 0;
	var iFromLength = 0;

	if(sOrig == null || sArgs == null)
	{
		return sOrig;
	}

	var iArrayLength = sArgs.length;
	var sRepTag = null;
	for(i=0; i<iArrayLength; i++)
	{
		sRepTag = "{" + i + "}";
		if((iIndex = sOrig.indexOf(sRepTag))<0)
			continue;
		iFromLength = sRepTag.length;
		sOrig = sOrig.replace(sRepTag, sArgs[i]);
	}
	return sOrig;
}

