/*

   safeonload.js
   ben miller : ben@hyl.co.uk : http://digital.hyl.co.uk
   v1.1 : 2/18/2004

   - body onload utility (supports multiple onload functions)
   - Robert Dominy javascript.guide@about.com many thanks
   - call SafeAddOnload with function to load as argument,
     SafeOnload then gets called at the onload event,
     looping through loaded functions.
   - N.B. overriden by <script for="window" event="onload"> blocks

*/

isMac = (navigator.appVersion.indexOf("Mac")!=-1)?true:false;
IEmac = ((document.all)&&(isMac))?true:false;
IE4   = ((document.all)&&(navigator.appVersion.indexOf("MSIE 4.")!=-1))?true:false;

var gSafeOnload = new Array();

function SafeAddOnload(f)
{
  if(IEmac&&IE4) // IE 4.5 blows out on testing window.onload
  {
    window.onload = SafeOnload;
    gSafeOnload[gSafeOnload.length] = f;
  }
  else if(window.onload)
  {
    if(window.onload!=SafeOnload)
    {
      gSafeOnload[0] = window.onload;
      window.onload = SafeOnload;
    }
    gSafeOnload[gSafeOnload.length] = f;
  }
  else
  {
    window.onload = f;
  }
}

function SafeOnload()
{
  for(i=0;i<gSafeOnload.length;i++)
  {
    gSafeOnload[i]();
  }
}

