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];
		}
	}
}

function MM_swapImgRestore() { //v3.0
  var i,x,a=document.MM_sr; for(i=0;a&&i<a.length&&(x=a[i])&&x.oSrc;i++) x.src=x.oSrc;
}

function MM_findObj(n, d) { //v4.0
  var p,i,x;  if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
    d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
  if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
  for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document);
  if(!x && document.getElementById) x=document.getElementById(n); return x;
}

function MM_swapImage() { //v3.0
  var i,j=0,x,a=MM_swapImage.arguments; document.MM_sr=new Array; for(i=0;i<(a.length-2);i+=3)
   if ((x=MM_findObj(a[i]))!=null){document.MM_sr[j++]=x; if(!x.oSrc) x.oSrc=x.src; x.src=a[i+2];}
}

function MM_showHideLayers() { //v3.0
  var i,p,v,obj,args=MM_showHideLayers.arguments;
  for (i=0; i<(args.length-2); i+=3) if ((obj=MM_findObj(args[i]))!=null) { v=args[i+2];
    if (obj.style) { obj=obj.style; v=(v=='show')?'visible':(v='hide')?'hidden':v; }
    obj.visibility=v; }
}

function localizeDateTime(pOutputDate, pServerDate)
{
//date to be adjusted
dbDate = new Date(pOutputDate);
tempOutputDate = new Date(pOutputDate);

//date on server
serverdate = new Date(pServerDate);
serverdate = serverdate;

//date on client
clientDate = new Date();

//get hours on server and client, and determine the difference
serverhours = serverdate.getUTCHours();
clienthours = clientDate.getUTCHours();
hoursdiff = clienthours - serverhours;

//adjust the database date for difference in hours
dbhours = dbDate.getHours();
tempOutputDate.setHours(dbhours + hoursdiff);
adjustedDBdate = tempOutputDate;

//output for verification
//document.write("The time and date in database: " + dbDate.toLocaleString() + ".<br/>");
//document.write("The time and date on the server is: " + serverdate.toLocaleString() + ".<br/>");
//document.write("The time and date on the client is: " + clientDate.toLocaleString() + ".<br/>");
//document.write("Server GMT hours: " + serverhours + ".<br/>");
//document.write("Client GMT hours: " + clienthours + ".<br/>");
//document.write("DBDate local (server) hours: " + dbhours + ".<br/>");
//document.write("Difference in hours between server and client: " + hoursdiff + ".<br/>");
//document.write("Adjusted database date: " + adjustedDBdate.toLocaleString() + ".<br/>");
//alert(adjustedDBdate.toLocaleString());

//now create output string in the proper format
stOutput = "";

switch (adjustedDBdate.getMonth() + 1) 
{
case 1: 
  stOutput = "January ";
  break
case 2: 
  stOutput = "February ";
  break
case 3: 
  stOutput = "March ";
  break
case 4: 
  stOutput = "April ";
  break
case 5: 
  stOutput = "May ";
  break
case 6: 
  stOutput = "June ";
  break
case 7: 
  stOutput = "July ";
  break
case 8: 
  stOutput = "August ";
  break
case 9: 
  stOutput = "September ";
  break
case 10: 
  stOutput = "October ";
  break
case 11: 
  stOutput = "November ";
  break
case 12: 
  stOutput = "December ";
  break
}

//get year, and adjust for non-IE browsers
stYear = adjustedDBdate.getYear();
if (navigator.userAgent.indexOf('MSIE') <= 0) stYear = stYear + 1900;

stOutput += adjustedDBdate.getDate() + ", " + stYear + "  ";
ap = "";
stHour = adjustedDBdate.getHours();

//correct for 24 hour clock and set AM/PM indicator
if (stHour < 12)
   {
   a_p = "AM";
   }
else
   {
   a_p = "PM";
   }
if (stHour == 0)
   {
   stHour = 12;
   }
if (stHour > 12)
   {
   stHour = stHour - 12;
   }

stHour = stHour.toString();

stMin = adjustedDBdate.getMinutes();
stMin = stMin.toString();
if (stMin.length == 1) {stMin = "0" + stMin}

//if no time passed, don't append time stamp to string
if (adjustedDBdate.getMinutes() != 0 && adjustedDBdate.getHours() != 0){
	stOutput += stHour + ":" + stMin + " " + a_p;
	}

return stOutput;
}

function localizeTime(pOutputDate, pServerDate)
{
//these next two lines fix firefox
//if there is no space between time and AM or PM then it blows up for firefox
pOutputDate = pOutputDate.replace("AM"," AM")
pOutputDate = pOutputDate.replace("PM"," PM")


//date to be adjusted
dbDate = new Date(pOutputDate);
tempOutputDate = new Date(pOutputDate);

//date on server
serverdate = new Date(pServerDate);
serverdate = serverdate;

//date on client
clientDate = new Date();

//get hours on server and client, and determine the difference
serverhours = serverdate.getUTCHours();
clienthours = clientDate.getUTCHours();
hoursdiff = clienthours - serverhours;

//adjust the database date for difference in hours
dbhours = dbDate.getHours();

tempOutputDate.setHours(dbhours + hoursdiff);
adjustedDBdate = tempOutputDate;

//output for verification
//document.write("The time and date in database: " + dbDate.toLocaleString() + ".<br/>");
//document.write("The time and date on the server is: " + serverdate.toLocaleString() + ".<br/>");
//document.write("The time and date on the client is: " + clientDate.toLocaleString() + ".<br/>");
//document.write("Server GMT hours: " + serverhours + ".<br/>");
//document.write("Client GMT hours: " + clienthours + ".<br/>");
//document.write("DBDate local (server) hours: " + dbhours + ".<br/>");
//document.write("Difference in hours between server and client: " + hoursdiff + ".<br/>");
//document.write("Adjusted database date: " + adjustedDBdate.toLocaleString() + ".<br/>");
//alert(adjustedDBdate.toLocaleString());

//now create output string in the proper format
stOutput = "";

ap = "";
stHour = adjustedDBdate.getHours();

//correct for 24 hour clock and set AM/PM indicator
if (stHour < 12)
   {
   a_p = "AM";
   }
else
   {
   a_p = "PM";
   }
if (stHour == 0)
   {
   stHour = 12;
   }
if (stHour > 12)
   {
   stHour = stHour - 12;
   }

stHour = stHour.toString();

stMin = adjustedDBdate.getMinutes();
stMin = stMin.toString();
if (stMin.length == 1) {stMin = "0" + stMin}
//if no time passed, don't append time stamp to string
//owen-changed this line to only check for hours being empty or 0 because minutes can be 0
//removed check for minutes being zero
if (adjustedDBdate.getHours() != 0){
	stOutput += stHour + ":" + stMin + " " + a_p;
	}

return stOutput;
}



