/* SWIM2.0 :: Simple website menu
****************************************************************
* DOM scripting by brothercake -- http://www.brothercake.com/
* Licensed under GPL -- http://www.gnu.org/copyleft/gpl.html
****************************************************************
* For professional menu solutions visit -- http://www.udm4.com/ 
****************************************************************
*/

var drawmenu = false;
var drawgooglemap = false;
var menu = new Object;

menu.ua = navigator.userAgent.toLowerCase();
menu.op6 = (menu.ua.indexOf("opera 6")!=-1 || menu.ua.indexOf("opera/6")!=-1);
menu.dom = (typeof document.getElementById!="undefined" && typeof document.createElement!="undefined" && !menu.op6);
menu.ie = (typeof document.all!='undefined' && typeof window.opera=='undefined' && navigator.vendor!='KDE');

var group;
var question;
var firstmenupic = false;

var map = null;
var point = null;
var gmarkers = [];
//var geocoder = null;

function gLoad() {
  if (GBrowserIsCompatible()) {
  	  		
    map = new GMap2(document.getElementById("map"));
    map.addControl(new GSmallMapControl());
	map.addControl(new GMapTypeControl());
    gLoadPage();
  }
}

function createMarker(point,name,address,address2,city,province,postal,phone,url,homearrow,number) {
	var html
	if (homearrow == false && address2.length == 0)
	{
		html = '<div class="window"><b>' + name + '</b><br>' + address + 
           '<br>' + city + ', ' + province + ', ' + postal + '<br>' + phone + '</div>';
	}
	else if (homearrow == false)
	{
		html = '<div class="window"><b>' + name + '</b><br>' + address +'<br>' + address2 + 
           '<br>' + city + ', ' + province + ', ' + postal + '<br>' + phone + '</div>';
	}
	else
	{
		html = '<div class="window"><b>' + postal + '</b></div>';
	}

	if (homearrow)
	{
		//var hair = band;	
		var icon = new GIcon();
		icon.image = "/webimages/arrow.png";
		icon.shadow = "/webimages/arrowshadow.png";
		icon.iconSize = new GSize(39, 34);
		icon.shadowSize = new GSize(39, 34);
		icon.iconAnchor = new GPoint(18, 33);
		icon.infoWindowAnchor = new GPoint(10, 1);
		var marker = createMarkerFinal(point, html, icon, number);
		map.addOverlay(marker);		
	}
	else
	{
		var icon = new GIcon();
		icon.image = "/webimages/marker"+String.fromCharCode(65+number)+".png";
		icon.shadow = "/webimages/shadow50.png";
		icon.iconSize = new GSize(20, 34);
		icon.shadowSize = new GSize(37, 34);
		icon.iconAnchor = new GPoint(10, 33);
		icon.infoWindowAnchor = new GPoint(10, 1);
		var marker = createMarkerFinal(point, html, icon, number);	
		map.addOverlay(marker);
	}
}
	
function createMarkerFinal(point,html,icon,number) {
	var marker		
   	marker = new GMarker(point, icon);
    GEvent.addListener(marker, "click", function() {
      marker.openInfoWindowHtml(html);
    });
    gmarkers[number]=marker;
    if (number >= 0)
    {
	    GEvent.addListener(marker, "infowindowopen", function() { 
	        var tablerow = document.getElementById('Marker'+number); 
	    	tablerow.className = 'Active'; 
    	});
    }
    return marker;
}

function myclick(i) {
	GEvent.trigger(gmarkers[i], "click");
}

if (navigator.platform == "Win32" && navigator.appName == "Microsoft Internet Explorer" && window.attachEvent) {
	document.writeln('<style type="text/css">img.img_ul, img.img_logo, img.img_logoawt, img.img_logosmall { visibility:hidden; } </style>');
	window.attachEvent("onload", fnLoadPngs);
}

window.onload = function()
{
	if (drawgooglemap)
	{
		gLoad();
	}
	
	if (drawmenu)
	{
		if (menu.ie||menu.dom)
		{
			displayimg();
		}
		else
		{
			setInterval("rotateimage()",wait);
		}
	}
	var main_menu = new simpleMenu('menu');
	var prod_menu = new simpleMenu('prod_menu');
	group = getElementsByClass(document, "faqGroup", "div");
	question = getElementsByClass(document, "faqAnswer", "div");
};

function simpleMenu(navid)
{
	if ((typeof document.getElementById  == 'undefined') || (/opera[\/ ][56]/i.test(navigator.userAgent))) { return; }
	this.iskde = navigator.vendor == 'KDE';
	this.isie = typeof document.all != 'undefined' && typeof window.opera == 'undefined' && !this.iskde;
	this.isie7 = (this.isie && typeof window.XMLHttpRequest!="undefined");
	this.isoldsaf = navigator.vendor == 'Apple Computer, Inc.' && typeof XMLHttpRequest == 'undefined';
	this.tree = document.getElementById(navid);
	if(this.tree !== null)
	{
		this.items = this.tree.getElementsByTagName('li');
		this.itemsLen = this.items.length;
		var i = 0; 
		do
		{
			this.init(this.items[i], this.isie && !this.isie7, this.isoldsaf, this.iskde, navid);
		}
		while (++i < this.itemsLen);
	}

}

simpleMenu.prototype.init = function(trigger, isie, isoldsaf, iskde, navid)
{
	trigger.menu = trigger.getElementsByTagName('ul').length > 0 ? trigger.getElementsByTagName('ul')[0] : null;
	trigger.link = trigger.getElementsByTagName('a')[0];
	trigger.issub = (trigger.parentNode.id == navid);
	this.openers = { 'm' : 'onmouseover', 'k' : (isie ? 'onactivate' : 'onfocus') };
	for(var i in this.openers)
	{
		trigger[this.openers[i]] = function(e)
		{
			if(!iskde) { trigger.link.className += (trigger.link.className === '' ? '' : ' ') + 'rollover'; }
			if(trigger.menu !== null)
			{
				trigger.menu.style.left = (isie || isoldsaf) ? trigger.offsetLeft + 'px' : 'auto';
				trigger.menu.style.top = (trigger.issub) ? (isie || (isoldsaf)) ? trigger.link.offsetHeight + 'px' : 'auto' : (isie || (isoldsaf)) ? trigger.offsetTop + 'px' : '0';
			}
		};
	}
	this.closers = { 'm' : 'onmouseout', 'k' : (isie ? 'ondeactivate' : 'onblur') };
	for(i in this.closers)
	{
		trigger[this.closers[i]] = function(e)
		{
			this.related = (!e) ? window.event.toElement : e.relatedTarget;
			if(!this.contains(this.related))
			{
				if(!iskde) { trigger.link.className = trigger.link.className.replace(/[ ]?rollover/g, ''); }
				if(trigger.menu !== null)
				{
					trigger.menu.style['left'] = '-10000px';
				}
			}
		};
	}
	if(!isie)
	{
		trigger.contains = function(node)
		{
			if (node === null) { return false; }
			if (node == this) { return true; }
			else { return this.contains(node.parentNode); }
		};
	}
};

//Modified fade-in scripts from Dynamic Drive.
//Visit Dynamic Drive at http://www.dynamicdrive.com/ for full source code
function fadepic()
{
	if (curpos < 100)
	{
		curpos=(pause)? 110 : curpos+10;
		if (tempobj.filters)
		{
			tempobj.filters.alpha.opacity = curpos;
		}
		else if (tempobj.style.MozOpacity)
		{
			tempobj.style.MozOpacity= curpos / 101;
		}
	}
	else if (menurot) {
		firstmenupic = true;
		clearInterval(dropslide);
		nextcanvas=(curcanvas=="canvas1")? "canvas1" : "canvas2";
		tempobj=menu.ie? eval("document.all."+nextcanvas) : document.getElementById(nextcanvas);
		tempobj.innerHTML='<img src="'+imgarray[nextimageindex]+'">';
		nextimageindex=(nextimageindex<imgarray.length-1)? nextimageindex+1 : 0;
		var tempobj2=menu.ie? eval("document.all."+nextcanvas) : document.getElementById(nextcanvas);
		tempobj2.style.visibility="hidden";
		setTimeout("rotateimage()",wait);
	}
	else
	{
		firstmenupic = true;
	}
}

function rotateimage()
{
	if (!pause)
	{
		if (menu.ie||menu.dom)
		{
			resetit(curcanvas);
			var crossobj=tempobj=menu.ie? eval("document.all."+curcanvas) : document.getElementById(curcanvas);
			crossobj.style.zIndex = crossobj.style.zIndex + 1;
			crossobj.style.top = (350-imgheight[curimageindex])/2+'px';
			tempobj.style.visibility="visible";
			var temp='setInterval("fadepic()",50)';
			dropslide=eval(temp);
			curcanvas=(curcanvas=="canvas1")? "canvas2" : "canvas1";
		}
		else
		{ 
			document.images.defaultslide.src=imgarray[curimageindex];
		}
		lastimageindex=curimageindex;
		curimageindex=(curimageindex < imgarray.length-1)? curimageindex+1 : 0;
	}
	else
	{
		setTimeout("rotateimage()",wait);
	}
}

function resetit(what)
{
	curpos=10;
	var crossobj=menu.ie? eval("document.all."+what) : document.getElementById(what);
	if (crossobj.filters)
	{
		crossobj.filters.alpha.opacity = curpos;
	}
	else
	{
		if (crossobj.style.MozOpacity)
		{
			crossobj.style.MozOpacity=curpos/101;
		}
	}
}

function displayimg()
{
	var crossobj=(menu.ie)? eval("document.all."+curcanvas) : document.getElementById(curcanvas);
	if (crossobj != null)
	{
		crossobj.innerHTML='<img src="'+imgarray[curimageindex]+'">';
		rotateimage();
	}
}

function ChPic(indexnum, Hold)
{
	if (firstmenupic)
	{
		pause=Hold;
		var dispcanvas=(curcanvas=="canvas1")? "canvas2" : "canvas1";
		var crossobj=menu.ie? eval("document.all."+dispcanvas) : document.getElementById(dispcanvas); 
		if (!menurot)
		{
			document.getElementById("menu_desc").innerHTML=menu_desc[indexnum];
		}
		if (Hold)
		{
			crossobj.style.top = (350-imgheight[indexnum])/2+'px';
			crossobj.innerHTML='<img src="'+imgarray[indexnum]+'">';
		}
		else
		{
			crossobj.innerHTML='<img src="'+imgarray[lastimageindex]+'">';
			crossobj.style.top = (350-imgheight[lastimageindex])/2+'px';
		}
	}
}

function fnLoadPngs() {
	var rslt = navigator.appVersion.match(/MSIE (\d+\.\d+)/, '');
	var itsAllGood = (rslt !== null && Number(rslt[1]) >= 5.5 && Number(rslt[1]) < 7.0);
	var e;
	for (var i = document.images.length - 1, img = null; (img = document.images[i]); i=i-1) {
		if (itsAllGood && img.src.match(/\.png$/i) !== null &&img.src.match("google") == null) {
			fnFixPng(img);
			img.attachEvent("onpropertychange", fnPropertyChanged);
		}
		img.style.visibility = "visible";
	}

	var nl = document.getElementsByTagName("INPUT");
	for (i = nl.length - 1, e = null; (e = nl[i]); i=i-1) {
		if (e.className && e.className.match(/\bimage\b/i) !== null) {
			if (e.src.match(/\.png$/i) !== null) {
				fnFixPng(e);
				e.attachEvent("onpropertychange", fnPropertyChanged);
			}
			e.style.visibility = "visible";
		} 
	}
}

function fnPropertyChanged() {
	if (window.event.propertyName == "src") {
		var el = window.event.srcElement;
		if (!el.src.match(/x\.gif$/i)) {
			el.filters.item(0).src = el.src;
			el.src = "x.gif";
		}
	}
}

function fnFixPng(img) {
	if (navigator.platform == "Win32" && navigator.appName == "Microsoft Internet Explorer" && window.attachEvent) {
		var src = img.src;
		img.style.width = img.width + "px";
		img.style.height = img.height + "px";
		img.style.filter = "progid:DXImageTransform.Microsoft.AlphaImageLoader(src='" + src + "', sizingMethod='scale')";
		img.src = "/webimages/spacer.gif";
	}
}
/*
function dbg(o) {
	var s = "";
	var i = 0;
	for (var p in o) {
		s += p + ": " + o[p] + "\n";
		if (++i % 10 === 0) {
			alert(s);
			s = "";
		}
	}
	alert(s);
}
*/
//faq question hiding toggle
function toggle(obj, i)
{
	if (obj[i].style.display == 'none')
	{
		obj[i].style.display = '';
	}
	else
	{
		obj[i].style.display = 'none';
	}
}

function hideall(obj)
{
	for (var i in obj)
	{
		obj[i].style.display = 'none';
	}
}

function showall(obj)
{
	for (var i in obj)
	{
		obj[i].style.display = '';
	}
}

function isNumber(a) {
    return typeof a == 'number' && isFinite(a);
}

function getElementsByClass(node,searchClass,tag) {
	var classElements = new Array();
	var els = node.getElementsByTagName(tag);
	var elsLen = els.length;
	var pattern = new RegExp("(^|\\s)"+searchClass+"(\\s|$)");
	for (var i = 0, j = 0; i < elsLen; i=i+1) {
    	if ( pattern.test(els[i].className) ) {
      		classElements[j] = els[i];
    		j=j+1;
    	}
  	}
  	return classElements;
}