/* common javsacript file */
// JavaScript Browser Sniffer
// Eric Krok, Andy King, Michel Plungjan Jan. 31, 2002
// see http://www.webreference.com/ for more information
//
// This program is free software; you can redistribute it and/or modify
// it under the terms of the GNU General Public License as published by
// the Free Software Foundation; either version 2 of the License, or
// (at your option) any later version.

var agt=navigator.userAgent.toLowerCase();
var appVer = navigator.appVersion.toLowerCase();
var is_minor = parseFloat(appVer);
var is_major = parseInt(is_minor);

var is_opera = (agt.indexOf("opera") != -1);

var is_mac = (agt.indexOf("mac")!=-1);
var iePos  = appVer.indexOf('msie');
if (iePos !=-1) {
   if(is_mac) {
	   var iePos = agt.indexOf('msie');
	   is_minor = parseFloat(agt.substring(iePos+5,agt.indexOf(';',iePos)));
   }
   else is_minor = parseFloat(appVer.substring(iePos+5,appVer.indexOf(';',iePos)));
   is_major = parseInt(is_minor);
}

var is_konq = false;
var kqPos   = agt.indexOf('konqueror');
if (kqPos !=-1) {                 
   is_konq  = true;
   is_minor = parseFloat(agt.substring(kqPos+10,agt.indexOf(';',kqPos)));
   is_major = parseInt(is_minor);
}                                 

var is_getElementById   = (document.getElementById) ? "true" : "false";
var is_getElementsByTagName = (document.getElementsByTagName) ? "true" : "false";
var is_documentElement = (document.documentElement) ? "true" : "false";

var is_safari = ((agt.indexOf('safari')!=-1)&&(agt.indexOf('mac')!=-1))?true:false;
var is_khtml  = (is_safari || is_konq);

var is_ie   = ((iePos!=-1) && (!is_opera) && (!is_khtml));
var is_ie4   = (is_ie && is_major == 4);
var is_ie5   = (is_ie && is_major == 5);
var is_ie5up = (is_ie && is_minor >= 5);
var is_ie5_5  = (is_ie && (agt.indexOf("msie 5.5") !=-1)); // 020128 new - abk
var is_ie6   = (is_ie && is_major == 6);
var is_ie7   = (is_ie && is_major == 7);


var is_ie6below = (is_ie6 || is_ie5_5);

/* PC-IE4 and Mac IE 5+ redirect */
if (is_ie4 || (is_ie5up == true && is_mac == true)) {
	window.location="../global-fail/fail-browser.html";
}

if (is_ie5 == true && is_ie5_5 == false) {
	ie5only();
}
	
/* function to have multiple events within the onload event */
function addLoadEvent(func) {
  var oldonload = window.onload;
  if (typeof window.onload != 'function') {
    window.onload = func;
  } else {
    window.onload = function() {
      if (oldonload) {
        oldonload();
      }
      func();
    }
  }
}

/* MM Preloads */
function MM_preloadImages() { //v3.0
  var d=document; if(d.images){ if(!d.MM_p) d.MM_p=new Array();
    var i,j=d.MM_p.length,a=MM_preloadImages.arguments; for(i=0; i<a.length; i++)
    if (a[i].indexOf("#")!=0){ d.MM_p[j]=new Image; d.MM_p[j++].src=a[i];}}
}

/* image change function */
var element
var oldSource
var newSource

var ieSource
var ieNewSource

var spacer = '../global-i/spacer.gif';

var lastElement = 'off';
var lastOldSource = 'off';
var lastList = 'off';

var ieLastOldSource

function changeSource(object,existing,source) {
	element = document.getElementById(object + 'img');
	listElement = document.getElementById(object + 'ul');
	oldSource = element.src;
	newSource = source;
	
	ieSource = existing;
	ieNewSource = source;
	
	element.src = newSource;
	if (is_ie6below) {
		element.runtimeStyle.filter = "progid:DXImageTransform.Microsoft.AlphaImageLoader(src='" + ieNewSource + "',sizingMethod='scale')";
	}
}

function changeSourceBack() {
	element.src = oldSource;
	if (is_ie6below) {
		element.runtimeStyle.filter = "progid:DXImageTransform.Microsoft.AlphaImageLoader(src='" + ieSource + "',sizingMethod='scale')";
	}
}

function setSource(optional) {
	if ((lastElement != 'off') && (lastOldSource != 'off') && (lastList != 'off')) {
		try {
			lastElement.src = lastOldSource;
			lastList.style.display = 'none';
		} catch (e) {
			alert('An error has occured');
		}
	}
	lastElement = element;
	lastOldSource = oldSource;
	ieLastOldSource = ieSource;
	if (optional == 'Africaul') {
		listElement = document.getElementById(optional);
	}
	lastList = listElement;
	
	element.src = newSource;
	oldSource = newSource;

	listElement.style.display = 'block';
}

function revert() {
	lastElement.src = lastOldSource;
	
	if (is_ie6below) {
		lastElement.runtimeStyle.filter = "progid:DXImageTransform.Microsoft.AlphaImageLoader(src='" + ieLastOldSource + "',sizingMethod='scale')";
	}

	lastList.style.display = 'none';
}

function setView() {
	var m = document.getElementsByTagName('div'), i;
	for (i = 0; i < m.length; ++i) {
		if ((m[i].className == 'rightCol') && (m[i].id == '') || (m[i].className == 'rightCol') && (m[i].id == 'mapView')) {
			m[i].setAttribute('id','listView');
			document.getElementById('images').style.display = 'none';

			// set all lists to be visible
			var q = document.getElementById('mainDiv').getElementsByTagName('ul'), j;
			for (j = 0; j < q.length; ++j) {
				q[j].style.display = 'block';
			}
		}
		else if ((m[i].className == 'rightCol') && (m[i].id == 'listView')) {
			m[i].setAttribute('id','mapView');
			document.getElementById('images').style.display = 'block';

			// set all lists to be visible
			var q = document.getElementById('mainDiv').getElementsByTagName('ul'), j;
			for (j = 0; j < q.length; ++j) {
				q[j].style.display = 'none';
			}
		}
	}
}