// global import function
var importedFiles = {};
importJS = function(src, fixFunctions) {
	var fixFuncs = (fixFunctions == null) ? true : fixFunctions;
	// don't import twice on the same page, could cause problems
	if(importedFiles[src] != null) return;
	
	document.write('<script type="text/javascript" src="'+src+'"></script>');
	/*
	new Ajax.Request(
	src, 
	{
		method: 'get', 
		onComplete: function(scriptContent) { 
						var sc = scriptContent.responseText.replace(/\w*(function) +([a-zA-Z0-9_]+)\(/g, '$2 = $1(');
						eval(sc); 
					 }
	});
	*/
	
	/*
    var e = document.createElement("script");
    e.src = src;
    e.type="text/javascript";
    var head = document.getElementsByTagName("head").item(0);
    if( head == null ) {
		alert('no head for you');
    }
    head.appendChild(e);
    */

	importedFiles[src] = true;
}

// Browser Detection Javascript
// copyright 1 February 2003, by Stephen Chapman, Felgall Pty Ltd

// You have permission to copy and use this javascript provided that
// the content of the script is not changed in any way.

function whichBrs() {
var agt=navigator.userAgent.toLowerCase();
if (agt.indexOf("opera") != -1) return 'Opera';
if (agt.indexOf("staroffice") != -1) return 'Star Office';
if (agt.indexOf("beonex") != -1) return 'Beonex';
if (agt.indexOf("chimera") != -1) return 'Chimera';
if (agt.indexOf("netpositive") != -1) return 'NetPositive';
if (agt.indexOf("phoenix") != -1) return 'Phoenix';
if (agt.indexOf("firefox") != -1) return 'Firefox';
if (agt.indexOf("safari") != -1) return 'Safari';
if (agt.indexOf("skipstone") != -1) return 'SkipStone';
if (agt.indexOf("msie") != -1) return 'Internet Explorer';
if (agt.indexOf("netscape") != -1) return 'Netscape';
if (agt.indexOf("mozilla/5.0") != -1) return 'Mozilla';
if (agt.indexOf('\/') != -1) {
if (agt.substr(0,agt.indexOf('\/')) != 'mozilla') {
return navigator.userAgent.substr(0,agt.indexOf('\/'));}
else return 'Netscape';} else if (agt.indexOf(' ') != -1)
return navigator.userAgent.substr(0,agt.indexOf(' '));
else return navigator.userAgent;
}


var BrowserInfo = {
	initialize: function() {
		this.browser = whichBrs();
	},
	isIE : function() {
		return this._userAgentContains('msie');
	},
	isSafari : function() {
		return this._userAgentContains('safari');
	},
	isNetscape : function() {
		return this._userAgentContains('netscape');
	},
	isFirefox : function() {
		return this._userAgentContains('firefox');
	},
	isOpera : function() {
		return this._userAgentContains('opera');
	},
	_getUserAgent: function() {
		return navigator.userAgent.toLowerCase();	
	},
	_userAgentContains: function(str) {
		return this._getUserAgent().indexOf(str) != -1;
	}
}

var SequenceNumberUtils = {
	retrieveSequenceNumber: function() {
		try {
			cookie = new HTTP.Cookies;			
			var value = cookie.read('sequence');
			return parseInt(value);
		} catch(e) {
			return -1;
		}
		return 0;
	}
}