var _navWidth;
var viewportwidth;
var viewportheight;
var _ref 		= 'ScrollWrap';
var D 			= new Date();
var timeId 		= D.getTime();

var BrowserDetect = {
	init: function () {
		this.browser = this.searchString(this.dataBrowser) || "An unknown browser";
		this.version = this.searchVersion(navigator.userAgent)
			|| this.searchVersion(navigator.appVersion)
			|| "an unknown version";
		this.OS = this.searchString(this.dataOS) || "an unknown OS";
	},
	searchString: function (data) {
		for (var i=0;i<data.length;i++)	{
			var dataString = data[i].string;
			var dataProp = data[i].prop;
			this.versionSearchString = data[i].versionSearch || data[i].identity;
			if (dataString) {
				if (dataString.indexOf(data[i].subString) != -1)
					return data[i].identity;
			}
			else if (dataProp)
				return data[i].identity;
		}
	},
	searchVersion: function (dataString) {
		var index = dataString.indexOf(this.versionSearchString);
		if (index == -1) return;
		return parseFloat(dataString.substring(index+this.versionSearchString.length+1));
	},
	dataBrowser: [
		{
			string: navigator.userAgent,
			subString: "Chrome",
			identity: "Chrome"
		},
		{ 	string: navigator.userAgent,
			subString: "OmniWeb",
			versionSearch: "OmniWeb/",
			identity: "OmniWeb"
		},
		{
			string: navigator.vendor,
			subString: "Apple",
			identity: "Safari",
			versionSearch: "Version"
		},
		{
			prop: window.opera,
			identity: "Opera"
		},
		{
			string: navigator.vendor,
			subString: "iCab",
			identity: "iCab"
		},
		{
			string: navigator.vendor,
			subString: "KDE",
			identity: "Konqueror"
		},
		{
			string: navigator.userAgent,
			subString: "Firefox",
			identity: "Firefox"
		},
		{
			string: navigator.vendor,
			subString: "Camino",
			identity: "Camino"
		},
		{		// for newer Netscapes (6+)
			string: navigator.userAgent,
			subString: "Netscape",
			identity: "Netscape"
		},
		{
			string: navigator.userAgent,
			subString: "MSIE",
			identity: "Explorer",
			versionSearch: "MSIE"
		},
		{
			string: navigator.userAgent,
			subString: "Gecko",
			identity: "Mozilla",
			versionSearch: "rv"
		},
		{ 		// for older Netscapes (4-)
			string: navigator.userAgent,
			subString: "Mozilla",
			identity: "Netscape",
			versionSearch: "Mozilla"
		}
	],
	dataOS : [
		{
			string: navigator.platform,
			subString: "Win",
			identity: "Windows"
		},
		{
			string: navigator.platform,
			subString: "Mac",
			identity: "Mac"
		},
		{
			   string: navigator.userAgent,
			   subString: "iPhone",
			   identity: "iPhone/iPod"
	    },
		{
			string: navigator.platform,
			subString: "Linux",
			identity: "Linux"
		}
	]

};
BrowserDetect.init();

function _establishDimensions(){
	if (typeof window.innerWidth != 'undefined'){
		viewportwidth 	= document.viewport.getWidth(),
		viewportheight 	= window.innerHeight
	}else if (typeof document.documentElement != 'undefined' && typeof document.documentElement.clientWidth != 'undefined' && document.documentElement.clientWidth != 0){
		viewportwidth 	= document.documentElement.clientWidth, 
		viewportheight 	= document.documentElement.clientHeight
	}else{
		viewportwidth 	= document.getElementsByTagName('body')[0].clientWidth, 
		viewportheight 	= document.getElementsByTagName('body')[0].clientHeight
	}
}

function _buildFlash(e){
		if (window.attachEvent){ sfHover(); }
	
		var flashvars 	= {};
		flashvars.time 	= timeId;
		var params 		= {
			menu: 'false',
			wmode: 'transparent'
		};
		swfobject.embedSWF("Products.swf", "ProductWrap", "880", "786", "9.0.0","expressInstall.swf", flashvars, params, { id:'ProductWrap' });
		swfobject.embedSWF("Scroll.swf", "ScrollWrap", "880", "76", "9.0.0","expressInstall.swf", flashvars, params, { id:'ScrollWrap' });
		BrowserDetect.browser == 'Explorer' ? _initialise() : Event.observe(window, 'load', _initialise);
}

function _initialise(){
	_establishDimensions();
	_navWidth 			= $(_ref).getStyle('width').substr(0, $(_ref).getStyle('width').length - 2);
	var tmp 			= (viewportwidth - _navWidth) / 2;
	new Effect.Move($(_ref), { x:tmp + 1, y:0, mode:'absolute', duration:0.1, fps:10, transition:Effect.Transitions.full, afterFinish:_startWatch });
}

function _startWatch(){
	new PeriodicalExecuter(_handleScroll, 2);
}

function _handleScroll(e){
	_establishDimensions();
	var yPos 	= document.viewport.getScrollOffsets().top + ( viewportheight / 2 ) - ($(_ref).getHeight() / 2);
	var xPos 	= document.viewport.getScrollOffsets().left + ( viewportwidth - _navWidth ) / 2;
	new Effect.Move($(_ref), { x:xPos + 1, y:yPos, mode:'absolute', duration:1.0, fps:60, delay:0 });
}

sfHover = function() {
	var sfEls = document.getElementById("nav").getElementsByTagName("LI");
	for (var i=0; i<sfEls.length; i++) {
		sfEls[i].onmouseover=function() {
			this.className+=" sfhover";
		}
		sfEls[i].onmouseout=function() {
			this.className=this.className.replace(new RegExp(" sfhover\\b"), "");
		}
		
	}
}

var MailWin
function PopMail() {
var winX,winY,w=250,h=482;
winX=(screen.availWidth-w)/2; winY=(screen.availHeight-h)/2;
MailWin=window.open("mailing.html","Win","width="+w+",height="+h+",left="+winX+",top="+winY+",scrollbars=no");
}

var TncWin
function PopTnc() {
var winX,winY,w=670,h=452;
winX=(screen.availWidth-w)/2; winY=(screen.availHeight-h)/2;
TncWin=window.open("tnc.html","Win","width="+w+",height="+h+",left="+winX+",top="+winY+",scrollbars=yes");
}

var PrivacyWin
function PopPrivacy() {
var winX,winY,w=670,h=452;
winX=(screen.availWidth-w)/2; winY=(screen.availHeight-h)/2;
PrivacyWin=window.open("privacy.html","Win","width="+w+",height="+h+",left="+winX+",top="+winY+",scrollbars=yes");
}

var ContactWin
function PopContact() {
var winX,winY,w=335,h=252;
winX=(screen.availWidth-w)/2; winY=(screen.availHeight-h)/2;
ContactWin=window.open("contact.html","Win","width="+w+",height="+h+",left="+winX+",top="+winY+",scrollbars=no");
}

document.observe('dom:loaded', _buildFlash);
