//document.write('<SCRIPT type="text/javascript" src="http://vegas.digi-net.com/groopz2/jsClient/js/config.js"><\/SCRIPT>')
_GroopzDir = "http://vegas.digi-net.com/groopz2/"
_jsClient = _GroopzDir + "jsClient/"
_GroopzJS = _jsClient + "js/"
_GroopzSiteNum = 1000
_jsResources = _GroopzDir + "/Resources/" + _GroopzSiteNum + "/jsClient/"



gid = getCookie("GroopzUID");
if(gid == null) {
	gid = Math.round(Math.random()*10000000000000000);
	var dat = new Date();
	dat.setTime(dat.getTime() + 365*24*60*60*1000); 
	var expString = "; expires=" + dat.toGMTString();
	document.cookie = "GroopzUID" + "=" + escape(gid) + expString; 
}



var JS = 0, APPLET = 1, EMAIL = 2
var clientType = JS
if(is_java) {
	//use java applet client if browser is java enabled
	clientType = APPLET
} else if(is_ie6up) {
	//use html/js client, just won't be able to proactively contact
	clientType = JS
} else {
	//not compatible for js client and not a java enabled browser, load email/fallback button
	clientType = EMAIL
}











if(clientType == JS) {
	//use js client
	//document.write ('<SCRIPT TYPE="text/javascript" SRC="', _GroopzJS.replace (/&/g, "&amp;"), 'jsClient.js"><\/SCRIPT>')
	_GroopzHost = "http://vegas.digi-net.com/groopz/GroopzClient/"  //location of the JavaScriptExtServlet
_GroopzPlaceOnHold = true
_GroopzButtonHeight = 1
_GroopzButtonWidth = 1
_GroopzButton = 0

//pre-cache images for help button
/*
var active = new Image(_GroopzButtonWidth || 152, _GroopzButtonHeight || 63)
active.src = _HtmlResources + "groopz-active.gif"
var away = new Image(_GroopzButtonWidth || 152, _GroopzButtonHeight || 63)
away.src = _HtmlResources + "groopz-away.gif"
var paging = new Image(_GroopzButtonWidth || 152, _GroopzButtonHeight || 63)
paging.src = _HtmlResources + "groopz-paging.gif"
var buttons = new Array(3)
buttons[0] = active
buttons[1] = away
buttons[2] = paging
*/

onunload = function() {
	(new Image) .src = _GroopzHost + "ul?clientId=" + clientId
}

/// LI = log in
function _GroopzLI (id) {
	_GroopzID = id
	document.write ("<A HREF='javascript:_GroopzRH ()' onMouseOver='status = \"Request Help via Groopz\\u2122\"; return true' onMouseOut='status = defaultStatus'><IMG NAME=_GroopzIm ALT='Request Help via Groopz&#8482;' onLoad='onload = null; _GroopzPS()' BORDER=0 HEIGHT=", self._GroopzButtonHeight || 63," WIDTH=", self._GroopzButtonWidth || 152, ' SRC="', _jsResources, 'groopz-starting.gif"/>', "</A>")
}

/* tmp working
function _GroopzLI (id) {
	_GroopzID = id
	document.write ("<A HREF='javascript:_GroopzRH ()' onMouseOver='status = \"Request Help via Groopz\\u2122\"; return true' onMouseOut='status = defaultStatus'><IMG NAME=_GroopzIm ALT='Request Help via Groopz&#8482;' ", _GroopzN4 ? "onLoad='onload = null; _GroopzPS ()' BORDER=0" : "STYLE='border: none'", " HEIGHT=", self._GroopzButtonHeight || 63, " WIDTH=", self._GroopzButtonWidth || 152, ' SRC="', _HtmlResources, 'groopz-starting.gif">', _GroopzN4 ? "<!--" : "<SCRIPT TYPE='text/javascript'>_GroopzPS ()</SCRIPT></A>")
}
*/
/* orig LI
function _GroopzLI (id) {
	_GroopzID = id
	document.write ("<IFRAME FRAMEBORDER=0 HEIGHT=1 ID=_GroopzIF STYLE='width: 0'></IFRAME><A HREF='javascript:_GroopzRH ()' onMouseOver='status = \"Request Help via Groopz\\u2122\"; return true' onMouseOut='status = defaultStatus'><IMG NAME=_GroopzIm ALT='Request Help via Groopz&#8482;' ", _GroopzN4 ? "onLoad='onload = null; _GroopzPS ()' BORDER=0" : "STYLE='border: none'", " HEIGHT=", self._GroopzButtonHeight || 63, " WIDTH=", self._GroopzButtonWidth || 152, ' SRC="', _HtmlResources, 'groopz-starting.gif">', _GroopzN4 ? "<!--" : "<SCRIPT TYPE='text/javascript'>_GroopzPS ()/*")
}
*/


/// PS = poll for status, sc = subcommand
function _GroopzPS (sc) {
	/// u = url
	var u = _GroopzHost + (sc || "ps") + "?clientId=" + clientId
	if (_GroopzIF) {
		_GroopzIF.src = u
	} else {
		/// OI = offscreen image
		_GroopzOI = new Image
		_GroopzOI.onload = _GroopzIL
		_GroopzOI.src = u + "&u=" + (new Date) .getTime () + _GroopzPI
		_GroopzPI = ""
    }
}

/// IL = image loaded
function _GroopzIL () {
	/// sc = status code
	var sc = _GroopzOI.width
	if (sc > 1) {
		_GroopzHS (sc)
	} else {
		_GroopzIF = document.getElementById ("_GroopzIF")
		_GroopzPS ()
    }
}

/// HS = handle status, sc = status code
function _GroopzHS (sc) {
	/// alert ("handle status, code = " + sc) /// temp
	/// nc = new chat, st = state
	var nc, st
	switch (sc) {
		case 2:
		  nc = true
		case 3:
		  st = "active"
			//_GroopzButton = 0
		  break
		case 4:
		  nc = true
		case 5:
		  st = "away"
			//_GroopzButton = 1
		  break
		case 6:
		  st = "paging"
			//_GroopzButton = 2
    }
	
	if (st != _GroopzSt) {
		//_GroopzSt = st
		//document._GroopzIm.src = active
		document._GroopzIm.src = _jsResources + "groopz2-" + (_GroopzSt = st) + ".gif"
	}
	if (nc) {
		_GroopzOC ()
	}
	/// TI = timer
	_GroopzTi = setTimeout ("_GroopzPS ()", 5000)
}

/// OC = open chat
function _GroopzOC (hold) {
	/// to do: figure out whether this url needs a timestamp
	holdParameter = hold ? "&hold=true" : "&hold=false"
	open(_GroopzHost + "cw?clientId=" + clientId + holdParameter, (new Date) .getTime (), "width=400,height=310" + (/^mac/i.test (navigator.platform || "") ? ",menubar" : "") + (_GroopzN4 ? "" : ",resizable"))
}

/// RH = request help
function _GroopzRH (){
	if (_GroopzSt == "away") {
		location = "mailto:example@example.com"
	} else {
		if (self._GroopzOI) {
			_GroopzOI.onload = null
		}
		if (self._GroopzTi) {
			clearTimeout (_GroopzTi)
			_GroopzPS ("rh")
			
			/// to do: allow only one of these windows?
			if (self._GroopzPlaceOnHold) {
				_GroopzOC(_GroopzPlaceOnHold)
			}
		}
	}
}

/// ES = encode string
function _GroopzES (s) {
	/// o = output
	var l = s.length, o = ""
	/// eb = encode byte
	var eb = function (b) {
		var s = "0" + b.toString (16)
		o += "'" + s.substring (s.length - 2)
	}
	for (var i = 0; i < l; ++i) {
		var n = s.charCodeAt (i)
		if (n < 128) {
			var c = s.charAt (i);
			if ("!'+".indexOf (c) < 0) {
				o += c
			} else {
				eb (n)
			}
        } else {
			var f = function (n, l) {
				if (n < l) {
					eb (n - l - l + 256)
				} else {
					f (n >> 6, l >> 1)
					eb (n & 63 | 128)
                }
            }
			f (n, 64)
        }
    }
	return escape (o) .replace (/%20/g, "+") .replace (/%27/g, "'")
}

/// N4 = Navigator 4
_GroopzN4 = navigator.appName == "Netscape" && parseInt (navigator.appVersion, 10) < 5

/// PI = profile information
/// to do: The regular expression below isn't quite right.  This should all be done on the host, anyway.
_GroopzPI = "&pi=" + _GroopzES (navigator.appVersion.replace (/[^.0-9].*/, "")) + "!" + _GroopzES (navigator.appName) + "!" + _GroopzES (navigator.platform) + "!" + _GroopzES (navigator.language || navigator.userLanguage) + "!" + _GroopzES (self._GroopzGroups || "none") + "!" + _GroopzES (document.title) + "!" + _GroopzES (document.URL) + "!" + _GroopzES (document.referrer || "none") + "!" + _GroopzES (is_popup_blocker?"true":"false")

/// SE = Script Element, St = status
var _GroopzIF, _GroopzSt, id = String(Math.random()), clientId = id.substring(id.indexOf(".")+1, id.length)

//document.write('<SCRIPT TYPE="text/javascript" SRC="http://10.3.0.104:8080/groopz/GroopzClient/li?"></SCRIPT>')

document.write ('<SCR'+'IPT TYPE="text/javascript" SRC="', _GroopzHost, 'li?userId=', gid, '&amp;clientId=', clientId, '&amp;site=', _GroopzSiteNum, '&amp;u=', (new Date) .getTime (), '"><\/SCR'+'IPT>')

//document.close()
} else if(clientType == APPLET) {
	//use java applet client if browser is java enabled
	document.write ('<SCRIPT TYPE="text/javascript" SRC="default.js"><\/SCRIPT>')
} else {
	//not compatible for js client and not a java enabled browser, load email/fallback button
	document.write ('<A HREF="mailto:example@example.com">')
		document.write ('<IMG ALT="Contact us" BORDER=0 HEIGHT=63 WIDTH=152 SRC="', _jsResources, 'groopz-fallback.gif">')
	document.write ('</A>')
}
