function elementByID(elementID) {
 return document.getElementById(elementID);
}

function replaceImage(imageID,imageSrc) {
 var image    = elementByID(imageID);
 var nodeName = image.nodeName.toUpperCase();
 imageSrc     = 'Images/'+imageSrc;
 if (nodeName=='SPAN') {
  image.style.filter
   = "progid:DXImageTransform.Microsoft.AlphaImageLoader(src='"+
     imageSrc+"',sizingMethod='scale');";
 } else {
  image.src = imageSrc;
 }
}

function mouseOverMainMenuItem(name) {
 replaceImage('menu'+name,'Menu'+name+'Over.png');
 changeSubMenu('sub'+name);
}

function mouseOutMainMenuItem(name) {
 replaceImage('menu'+name,'Menu'+name+'.png');
}

function changeSubMenu(name) {
 var curVal = elementByID('subChoice').value;
 var current = elementByID(curVal);
 current.style.display = 'none';
 var menu    = elementByID(name);
 menu.style.display = 'block';
 elementByID('subChoice').value = name;
}

function showLeftSubMenu(elementID) {
    var menuItems    = elementByID(elementID);
    var displayStyle = (menuItems.style.display=='block')?'none':'block';

    menuItems.style.display = displayStyle;
}

function launchDemo(demoName,width,height) {

 if (!width) {
  width  = 949;
  height = 631;
 }

 var currentLocation = window.location.href;
 var demoLocation    = demoName+'Demo.html';
 if (currentLocation.match(/\?/)) {
     currentLocation = currentLocation.replace(/^.*\?/,'');
     currentLocation = currentLocation.replace(/ggid=F\d+/,'ggid=F0');
     demoLocation    = demoLocation+'?'+currentLocation;
 }
 window.open(demoLocation,
             '',
             'scrollbars=no,width='+width+',height='+height+',resizable=no');
}

function initializeGoogleMaps() {
 if (GBrowserIsCompatible()) {
  var map      = new GMap2(document.getElementById('googleMapsCanvas'));
  var location = new GLatLng(51.524739,-0.10143);

  map.setCenter(location,17);
  map.setUIToDefault();
  map.addOverlay(new GMarker(location));

  //
  // The following is required as setting overflow to hidden by default on 
  // div elements causes the map to be blank:
  //
  // div { overflow: hidden; }
  //

  var container = map.getContainer()
  var children = container.getElementsByTagName('DIV');
  for (var n = 0 ; n < children.length ; n++ ) {
   children[n].style.overflow = 'visible';
  }

 }
}
