/*-------------------------------------------------*/
/* BASE_SCRIPT.JS - Contains most site-wide script */
/*-------------------------------------------------*/

var SHOW_NAV = true;

var rightNow  = new Date();
var currMonth = rightNow.getMonth() + 1;
var currYear  = rightNow.getUTCFullYear();
currMonth     = currMonth + "";

if (currMonth.length == 1)
{
  currMonth = "0" + currMonth;
}


window.onload=function()
{
  initializePage();
  if (document.title == "Windsor United Church of Christ - Home")
  {
    getLoadTime();
  }
}


function initializePage()
{
  try
  {
    initializeLocalPage();
  } catch (err) { }

  if (document.getElementById("navMenuCell") != null) {
    document.getElementById("navMenuCell").height = window.screen.availHeight - 80;
  }
}


function assembleEmail(address)
{
  var domain = "windsorucc.org";
  var addr = "mailto:" + address + "@" + domain;
  return addr;
}

function assembleExternalEmail(address,domain)
{
  var addr = "mailto:"+address+"@"+domain;
  return addr;
}


function focusImage(imagePicUrlIDCurr, sImageFilenameS, sImageSPicUrlID, imagePicUrlIDDef)
{
  if (imagePicUrlIDCurr != imagePicUrlIDPrev)
  {
    var imagePicUrlPrev = document.getElementById(imagePicUrlIDPrev);
    if (null != imagePicUrlPrev)
    {
      imagePicUrlPrev.style.border = '2px solid #ffffff';
    }
    else
    {
      var imagePicUrlDef = document.getElementById(imagePicUrlIDDef);
      if (null != imagePicUrlDef)
      {
        imagePicUrlDef.style.border = '2px solid #ffffff';
      }
    }

    var imagePicUrlCurr = document.getElementById(imagePicUrlIDCurr);
    if (null != imagePicUrlCurr)
    {
      imagePicUrlCurr.style.border = '2px solid #FF0000';
    }

    var imageSPicUrl = document.getElementById(sImageSPicUrlID);
    if (null != imageSPicUrl)
    {
      if (imageSPicUrl.filters && window.createPopup)
      {
        imageSPicUrl.style.filter='progid:DXImageTransform.Microsoft.Fade(duration=0.7,overlap=1.0)';
        imageSPicUrl.filters[0].Apply();
      }
      imageSPicUrl.src = sImageFilenameS;
      if (imageSPicUrl.filters && window.createPopup)
      {
        imageSPicUrl.filters[0].Play();
      }
    }
  }
  imagePicUrlIDPrev = imagePicUrlIDCurr;
}


function crossOutPastDates()
{
  var liList = document.getElementsByTagName("li");

  if (liList == null || liList.length == 0) return;

  for (var i=0; i < liList.length; i++) {
    var currID = liList[i].id;
    if ( currID == null || currID == "")
    {
      // IGNORE
    }
    else
    {
      if ( checkPastDate(currID) )
      {
        var el = document.getElementById(currID);
        el.style.textDecoration = "line-through";
        //el.style.display = "none";
      }
    }
  }
}


function hideOldEntries()
{
  var divList = document.getElementsByTagName("div");
  if (divList != null && divList.length > 0) {
    var divTagsHidden = hideTags(divList);
  }

  var trList = document.getElementsByTagName("tr");
  if (trList != null && trList.length > 0) {
    var trTagsHidden = hideTags(trList);
  }

  var spanList = document.getElementsByTagName("span");
  if (spanList != null && spanList.length > 0) {
    var spanTagsHidden = hideTags(spanList);
  }

  var imgList = document.getElementsByTagName("img");
  if (imgList != null && imgList.length > 0) {
    var imgTagsHidden = hideTags(imgList,true);
  }

}


function hideTags(tagList,isImages)
{
  var tagsHidden = 0;
  // FOR EACH TAG IN LIST
  for (var i=0; i<tagList.length; i++)
  {
    // IF TAG HAS A hidedate, PARSE IT OUT - WATCH FOR FIREFOX, IT DOESN'T RECOGNIZE hideDate
    if (tagList[i].id == "hide")
    {
      // FIREFOX CHECK FOR "NEW" IMAGES ON TOC
      if (browser.isNS)
      {
        var altText = tagList[i].alt;
        // FACTOR IN "Added " in "Added 04/01/XXXX"
        var month = altText.substring(6,8)-0+1;
        if (month<10) month="0"+month;
        var day = altText.substring(9,11); 
        var year = altText.substring(12); 
        if ( checkForPastDate(year+":"+month+":"+day+":23:59:59") )
        {
          tagList[i].style.display="none";
          tagsHidden++;
        }
      }
      else if ( checkForPastDate(tagList[i].date) )
      {
        tagList[i].style.display="none";
        tagsHidden++;
      }  
    }
    
  
    // IF TAG ID IS PRESENT AND STARTS WITH hideOn, CHECK ACTUAL DATE
    if (tagList[i].id != null && tagList[i].id.substring(0,6)=="hideOn")
    {
      var currID = tagList[i].id;

      if ( checkPastDate(currID) )
      {
        var el = document.getElementById(currID);
        el.style.display="none";
        tagsHidden++;
  } } }
  return tagsHidden;
}

function checkPastDate(tagID)
{
  // CHECK TO SEE IF DATE IN TAG ID HAS PAST CURRENT TIME
  var dateToCheck = new Date(tagID.substring(7,11)
                            ,tagID.substring(12,14)-1
                            ,tagID.substring(15,17)
                            ,tagID.substring(18,20)
                            ,tagID.substring(21,23)
                            ,tagID.substring(24));

  return ( rightNow > dateToCheck ) ? true : false ;

}

function checkForPastDate(timestamp)
{
  // CHECK TO SEE IF DATE IS PAST THE CURRENT TIME
  var dateToCheck = new Date(timestamp.substring(0,4)
                            ,timestamp.substring(5,7)-1
                            ,timestamp.substring(8,10)
                            ,timestamp.substring(11,13)
                            ,timestamp.substring(14,16)
                            ,timestamp.substring(17));
  return ( rightNow > dateToCheck ) ? true : false ;
}



function redirect(page)
{
 location.href = page;
}


var countIncrement = 10;
function redirectCountdown()
{
  if (document.getElementById("countdown"))
  {
    var counter = document.getElementById("countdown");
    --countIncrement;
    counter.innerText = countIncrement;
  }
}


function getHeader(path)
{
  var text = '';
  text += '<table class="headerTable" cellspacing="0"><tr><td nowrap>';
  text += '<span>Living&nbsp;and&nbsp;Serving;&nbsp;from&nbsp;Generation&nbsp;to&nbsp;Generation</span>';
  var pathName = "graphics/wucc.gif";
  if (path)
  {
    pathName = path + pathName;
  }
  text += '</td><td><img src="'+pathName+'" align="right"></td></tr></table>';
  document.write(text);
}


function getHeaderNoGIF(showNav)
{
  var text = '';
  text += '<table id="headTable" class="headerTable2" cellspacing="0" border="0" onmouseover="hideMenuItem();">';
  text += '<tr><td nowrap>';
  text += '<span>Living&nbsp;and&nbsp;Serving;&nbsp;from&nbsp;Generation&nbsp;to&nbsp;Generation</span>';
  text += '</td><td width="460">';
  text += '<span style="font-size: 24pt; font-weight: bold;">Windsor&nbsp;UCC</span>';
  text += '</td></tr>';
  if (showNav!=null && showNav==true)
  {
    //text += addMenuBlue();
  }
  text += '</table>';
  document.write(text);
}


function addMenuBlue()
{
  var text = "";
  //text += "<tr><td colspan='2'>&nbsp;</td></tr>";
  return text;
}


function getHeaderBlue(showNav)
{
  var text = '';
  text += '<table id="headTable" class="headerTable" cellspacing="0" border="0" onmouseover="hideMenuItem();">';
  text += '<tr><td nowrap>';
  text += '<span>Living&nbsp;and&nbsp;Serving; from&nbsp;Generation&nbsp;to&nbsp;Generation</span>';
  text += '</td><td width="460">';
  text += '<span style="font-size: 24pt; font-weight: bold;">Windsor&nbsp;UCC</span>';
  text += '</td></tr>';
  if (showNav!=null && showNav==true)
  {
    text += addMenuBlue();
  }
  text += '</table>';
  document.write(text);
}


function getFooter(level,page)
{
  var path = "";
  if (level != null) {
    for (var i=0;i<level;i++) path += "../";
  }

  var pageName="";
  if (page != null) {
    pageName="("+page+")";
  }

  var currentYear = new Date().getFullYear();
  var text = "&#169; "+currentYear+" Windsor United Church of Christ. &nbsp;"
           + " All rights reserved."
           + "<br/>E-Mail comments to "
           + "<a href='"+assembleEmail('webmaster')+"?subject=WUCC: Website Comments "+pageName+"' style='color:#483D8B;'>Webmaster</a> "
           + "<a id='webmasterEmail' href='#'><img border='0' src='"+path+"graphics/email.gif' width='14' height='11' title='Send email to WUCC Webmaster'></a>"
           + "<p/>Page Last Updated: "
           + document.lastModified

    //       + "<br/>"
    //       + "<span style='color:#FFFFFF;'>Page Load Time: <span id='loadText'>0.0</span> seconds</span>";
  document.write(text);
  document.getElementById("webmasterEmail").href=assembleEmail("webmaster")+"?subject=WUCC: Website Comments "+pageName;
}


function handleBaseMenuItem(el,highlight)
{
  if (highlight)
  {
    el.style.backgroundColor="#E6E6FA";
    el.style.fontWeight="bold";
    el.style.cursor="pointer";
    if (isXMAS) el.style.color="#000000";
  }
  else
  {
    el.style.backgroundColor="";
    el.style.fontWeight="normal";
    el.style.cursor="default";
    if (isXMAS) el.style.color="#FFFFFF"
  }
}


function genericTDtext(hrefLoc)
{
  var text = '';
  text += ' align="center"';
  text += ' onmouseover="handleBaseMenuItem(this,true)"';
  text += ' onmouseout="handleBaseMenuItem(this,false)"';
  text += ' onclick="window.location.href=\''+hrefLoc+'\'"';
  return text;
}


function getMainMenu()
{
  var text = '';
  if (isXMAS)
  {
   text += '<table class="baseMenu" cellspacing="0" cellPadding="6" style="color:#FFFFFF">';
  }
  else
  {
   text += '<table class="baseMenu" cellspacing="0" cellPadding="6" style="color:#000000">';
  }
  text += '<tr><td id="menuWebHome"' + genericTDtext("index.htm") + '>';
  text += 'Web&nbsp;Home';
  text += '</td></tr>';
  text += '<tr><td id="menuServices"' + genericTDtext("services.htm") + '>';
  text += 'Worship&nbsp;Services';
  text += '</td></tr>';
  text += '<tr><td id="menuWhoWeAre"' + genericTDtext("whoweare.htm") + '>';
  text += 'Who&nbsp;We&nbsp;Are';
  text += '</td></tr>';
  text += '<tr><td id="menuCalendar"' + genericTDtext("eventcalendar.htm") + '>';
  text += 'Calendar&nbsp;of&nbsp;Events';
  text += '</td></tr>';
  text += '<tr><td id="menuMusic"' + genericTDtext("music.htm") + '>';
  text += 'Music';
  text += '</td></tr>';
  text += '<tr><td id="menuAdult"' + genericTDtext("adultprograms.htm") + '>';
  text += 'Adult&nbsp;Programs';
  text += '</td></tr>';
  text += '<tr><td id="menuYouth"' + genericTDtext("youth.htm") + '>';
  text += 'Children&nbsp;&amp;&nbsp;Youth';
  text += '</td></tr>';
  text += '<tr><td id="menuStaff"' + genericTDtext("staff.htm") + '>';
  text += 'Staff';
  text += '</td></tr>';
  text += '<tr><td id="menuContact"' + genericTDtext("contact.htm") + '>';
  text += 'Contact&nbsp;Us';
  text += '</td></tr>';
  text += '<tr><td id="menuMembers"' + genericTDtext("members/member_index.htm") + ' style="color:#B22222">';
  text += 'Members&nbsp;Site';
  text += '</td></tr>';
  text += '</table><hr/>';
  document.write(text);
}


function getLoadTime()
{
  //var finishTime=Math.floor(new Date()-rightNow)/1000;
  //if (finishTime%1==0) finishTime += ".0";
  //document.getElementById("loadText").innerText="Took " + finishTime + " seconds to load";
}


var churchImageCount = 3;
var churchImageSizes = new Array("222k","190k","182k");
var churchImages_s = new Array(churchImageCount);
var churchImages = new Array(churchImageCount);
function loadChurchImgs()
{
  var srcText_s;
  var srcText;

  //srcText_s = "members/photogallery/building/construction/2006_11_19/20061119_const_ex_3_fp.jpg";
  //srcText_s = "members/photogallery/building/construction/2006_11_19/20061119_const_ex_10_fp.jpg";
  //srcText_s = "members/photogallery/building/construction/2006_11_19/20061119_const_ex_12_fp.jpg";


  srcText_s = "members/photogallery/building/2009_04_12_easter_cross/20090412_cross_5_s.jpg";
  churchImages_s[0] = srcText_s;

  srcText_s = "members/photogallery/building/20070908_church_front_wp.jpg";
  churchImages_s[1] = srcText_s;

  srcText_s = "members/photogallery/building/20070908_sanctuary_wp.jpg";
  churchImages_s[2] = srcText_s;

  //srcText_s = "members/photogallery/building/construction/2006_11_19/20061119_const_ex_10_fp.jpg";
  //churchImages_s[2] = srcText_s;


  //srcText = "members/photogallery/building/construction/2006_11_19/20061119_const_ex_3.jpg";
  //srcText = "members/photogallery/building/construction/2006_11_19/20061119_const_ex_12.jpg";
  //srcText = "members/photogallery/building/construction/2006_11_19/20061119_const_ex_10.jpg";


  srcText_s = "members/photogallery/building/2009_04_12_easter_cross/20090412_cross_5.jpg";
  churchImages[0] = srcText_s;

  srcText = "members/photogallery/building/20070908_church_front.jpg";
  churchImages[1] = srcText;

  srcText = "members/photogallery/building/20070908_sanctuary.jpg";
  churchImages[2] = srcText;


  //srcText = "members/photogallery/building/construction/2006_11_19/20061119_const_ex_10.jpg";
  //churchImages[2] = srcText;

  for (i=0; i < churchImages.length; i++) {
    var preload = new Image();
    preload.src = churchImages_s[i];
    var preload2 = new Image();
    preload2.src = churchImages[i];
  }

}


var currChurchImg = 0;
function swapChurchImage()
{
  var imgEl = document.getElementById("churchImages");

  imgEl.style.filter="blendTrans(duration=2)";

  if (imgEl.filters.blendTrans.status != 2)
  {
    imgEl.filters.blendTrans.apply();
    var numImgs = churchImages.length;
    if (++currChurchImg == numImgs)
    {
      currChurchImg = 0;
    }
    document.getElementById("churchImages").src = churchImages_s[currChurchImg];
    var newImageSize = "Click for full size picture ("+churchImageSizes[currChurchImg]+") - Opens in new window";
    document.getElementById("churchImages").alt = newImageSize;
    document.getElementById("churchImageLargeLink").href = churchImages[currChurchImg];

    imgEl.filters.blendTrans.play();
  }
}


var maps = new Array(4);
function loadMaps()
{
  maps[0] = "graphics/map_street.gif";
  document.getElementById("imgMain").src = maps[0];
  maps[1] = "graphics/map_local.gif";
  maps[2] = "graphics/map_area.gif";
  maps[3] = "graphics/map_region.gif";

  for (i=0; i < maps.length; i++)
  {
    var preload = new Image();
    preload.src = maps[i];
  }
  getLoadTime();
}


function swapMap(imgIndex)
{
  document['imgMain'].src = maps[imgIndex];
  for (i=0; i < maps.length; i++)
  {
    var t = "m"+i;
    var fntSize = "10pt";
    var textColor = "";
    if (i==imgIndex)
    {
      fntSize = "12pt"
      textColor = "green";
    }
    document.getElementById(t).style.fontSize = fntSize;
    document.getElementById(t).style.color = textColor;
  }
}

function swapGoogleMap(mapIndex)
{
  document.getElementById("loadText").innerText="";
  var imgSRC = linkSRC = "";
  switch(mapIndex)
  {
    case 0:
      imgSRC = "http://maps.google.com/maps?f=d&amp;hl=en&amp;geocode=&amp;saddr=&amp;daddr=43.21818,-89.338943&amp;mra=dme&amp;mrcr=0&amp;mrsp=1&amp;sz=17&amp;sll=43.218172,-89.338728&amp;sspn=0.006435,0.009999&amp;ie=UTF8&amp;ll=43.218172,-89.338728&amp;spn=0.006435,0.009999&amp;output=embed&amp;s=AARTsJqbBBgPkjGIpKXiQUzTgAHSOthd5Q";
      linkSRC = "http://maps.google.com/maps?f=d&amp;hl=en&amp;geocode=&amp;saddr=&amp;daddr=43.21818,-89.338943&amp;mra=dme&amp;mrcr=0&amp;mrsp=1&amp;sz=17&amp;sll=43.218172,-89.338728&amp;sspn=0.006435,0.009999&amp;ie=UTF8&amp;ll=43.218172,-89.338728&amp;spn=0.006435,0.009999&amp;source=embed";
    case 1:
      imgSRC = "http://www.amfam.com";
      //imgSRC = "http://maps.google.com/maps?f=d&amp;hl=en&amp;geocode=&amp;saddr=&amp;daddr=4400+Second+Street,+Windsor+WI&amp;sll=43.218079,-89.340348&amp;sspn=0.01154,0.019956&amp;ie=UTF8&amp;om=1&amp;ll=43.218062,-89.340348&amp;spn=0.01154,0.019956&amp;output=embed&amp;s=AARTsJrgFpCfz-8f71lWLL-KwI9HKSaTKQ";
      linkSRC = "http://maps.google.com/maps?f=d&amp;hl=en&amp;geocode=&amp;saddr=&amp;daddr=4400+Second+Street,+Windsor+WI&amp;sll=43.218079,-89.340348&amp;sspn=0.01154,0.019956&amp;ie=UTF8&amp;om=1&amp;ll=43.218062,-89.340348&amp;spn=0.01154,0.019956&amp;source=embed"
    case 2:
      imgSRC = "http://maps.google.com/maps?f=d&amp;hl=en&amp;geocode=&amp;saddr=&amp;daddr=4400+Second+Street,+Windsor+WI&amp;sll=43.218079,-89.340348&amp;sspn=0.01154,0.019956&amp;ie=UTF8&amp;om=1&amp;ll=43.218062,-89.340348&amp;spn=0.01154,0.019956&amp;output=embed&amp;s=AARTsJrgFpCfz-8f71lWLL-KwI9HKSaTKQ";
      linkSRC = "http://maps.google.com/maps?f=d&amp;hl=en&amp;geocode=&amp;saddr=&amp;daddr=4400+Second+Street,+Windsor+WI&amp;sll=43.218079,-89.340348&amp;sspn=0.01154,0.019956&amp;ie=UTF8&amp;om=1&amp;ll=43.218062,-89.340348&amp;spn=0.01154,0.019956&amp;source=embed"
    case 3:
      imgSRC = "http://maps.google.com/maps?f=d&amp;hl=en&amp;geocode=&amp;saddr=&amp;daddr=4400+Second+Street,+Windsor+WI&amp;sll=43.218079,-89.340348&amp;sspn=0.01154,0.019956&amp;ie=UTF8&amp;om=1&amp;ll=43.218062,-89.340348&amp;spn=0.01154,0.019956&amp;output=embed&amp;s=AARTsJrgFpCfz-8f71lWLL-KwI9HKSaTKQ";
      linkSRC = "http://maps.google.com/maps?f=d&amp;hl=en&amp;geocode=&amp;saddr=&amp;daddr=4400+Second+Street,+Windsor+WI&amp;sll=43.218079,-89.340348&amp;sspn=0.01154,0.019956&amp;ie=UTF8&amp;om=1&amp;ll=43.218062,-89.340348&amp;spn=0.01154,0.019956&amp;source=embed"
    default:
      imgSRC = "http://maps.google.com/maps?f=d&amp;hl=en&amp;geocode=&amp;saddr=&amp;daddr=43.21818,-89.338943&amp;mra=dme&amp;mrcr=0&amp;mrsp=1&amp;sz=17&amp;sll=43.218172,-89.338728&amp;sspn=0.006435,0.009999&amp;ie=UTF8&amp;ll=43.218172,-89.338728&amp;spn=0.006435,0.009999&amp;output=embed&amp;s=AARTsJqbBBgPkjGIpKXiQUzTgAHSOthd5Q";
      linkSRC = "http://maps.google.com/maps?f=d&amp;hl=en&amp;geocode=&amp;saddr=&amp;daddr=43.21818,-89.338943&amp;mra=dme&amp;mrcr=0&amp;mrsp=1&amp;sz=17&amp;sll=43.218172,-89.338728&amp;sspn=0.006435,0.009999&amp;ie=UTF8&amp;ll=43.218172,-89.338728&amp;spn=0.006435,0.009999&amp;source=embed";
     }
  document.frames('mapFrame').src = imgSRC;
  document.getElementById('mapLink').href = linkSRC;

alert(document.getElementById('mapFrame').href);
  for (i=0; i < 4; i++)
  {
    var t = "m"+i;
    var fntSize = "10pt";
    var textColor = "";
    if (i==mapIndex)
    {
      fntSize = "12pt"
      textColor = "green";
    }
    document.getElementById(t).style.fontSize = fntSize;
    document.getElementById(t).style.color = textColor;
  }
}



function swap(imageArray, imageIndex, sourceElementName)
{
  document[sourceElementName].src = imageArray[imageIndex];
}


function expandSpan(spanIn)
{
  if (spanIn.style.display == "none")
  {
    spanIn.style.display = "inline";
  }
  else
  {
    spanIn.style.display = "none";
  }
}


function stopMarquee(id, stopIt)
{
  var marq = document.getElementById(id);
  if (stopIt)
  {
    marq.stop();
  }
  else
  {
    marq.start();
  }
}


function daysTill(month, day, year)
{
  //----------  EDIT THE VARIABLES BELOW  ------------------
  // EDIT THE VARIABLES BELOW
  //var day=	1 // Day
  //var month=	1 // Month
  //var year=	2009 //Year
  var event=	"New Year's Day 2009"
  var end = 	"days left until"
  //----------  END OF EDIT  -------------------------------

  var daystocount = new Date(year, month -1, day);
  today           = new Date();

  if (today.getMonth()==month && today.getDate()>day);

  daystocount.setFullYear(daystocount.getFullYear());

  var oneday=1000*60*60*24;

  var write = (Math.ceil((daystocount.getTime()-today.getTime())/(oneday)));

  //document.write('There are <strong>'+write +'</strong> '+end+' '+event);

  document.write(write);
}


// ******************************
// LINK POP-UP FUNCTIONS
// ******************************
addEvent(window, "load", makeNiceTitles);

var XHTMLNS = "http://www.w3.org/1999/xhtml";
var CURRENT_NICE_TITLE;
var browser = new Browser();

function makeNiceTitles()
{
  if ( ! document.createElement || ! document.getElementsByTagName ) return;

  if ( ! document.createElementNS )
  {
    document.createElementNS = function(ns,elt) { return document.createElement(elt); }
  }

  if ( ! document.links )
  {
    document.links = document.getElementsByTagName("a");
  }

  for ( var ti=0; ti < document.links.length; ti++)
  {
    var lnk = document.links[ti];
    if ( lnk.title )
    {
      lnk.setAttribute("nicetitle",lnk.title);
      lnk.removeAttribute("title");
      addEvent(lnk,"mouseover",showNiceTitle);
      addEvent(lnk,"mouseout",hideNiceTitle);
      addEvent(lnk,"focus",showNiceTitle);
      addEvent(lnk,"blur",hideNiceTitle);
    }
  }

/*
  if ( ! document.images )
  {
    document.images = document.getElementsByTagName("img");
  }

  for ( var ti=0; ti < document.images.length; ti++)
  {
    var img = document.images[ti];
    if ( img.title )
    {
      img.setAttribute("nicetitle",img.title);
      img.removeAttribute("title");
      addEvent(img,"mouseover",showNiceTitle);
      addEvent(img,"mouseout",hideNiceTitle);
      addEvent(img,"focus",showNiceTitle);
      addEvent(img,"blur",hideNiceTitle);
    }
  }

*/

  var instags = document.getElementsByTagName("ins");

  if ( instags )
  {
    for (var ti=0;ti<instags.length;ti++)
    {
      var instag = instags[ti];
      if (instag.dateTime)
      {
        var strDate = instag.dateTime;
        var dtIns = new Date(strDate.substring(0,4),parseInt(strDate.substring(4,6)-1),strDate.substring(6,8),strDate.substring(9,11),strDate.substring(11,13),strDate.substring(13,15));
        instag.setAttribute("nicetitle","Added on "+dtIns.toString());
        addEvent(instag,"mouseover",showNiceTitle);
        addEvent(instag,"mouseout",hideNiceTitle);
        addEvent(instag,"focus",showNiceTitle);
        addEvent(instag,"blur",hideNiceTitle);
      }
    }
  }
}


function findPosition( oLink )
{
  if( oLink.offsetParent ) {
    for ( var posX = 0, posY = 0; oLink.offsetParent; oLink = oLink.offsetParent )
    {
      posX += oLink.offsetLeft;
      posY += oLink.offsetTop;
    }
    return [ posX, posY ];
  } else {
    return [ oLink.x, oLink.y ];
  }
}


function showNiceTitle(e)
{
  if ( CURRENT_NICE_TITLE ) hideNiceTitle(CURRENT_NICE_TITLE);

  if ( ! document.getElementsByTagName ) return;

  if ( window.event && window.event.srcElement )
  {
    lnk = window.event.srcElement
  }
  else if (e && e.target)
  {
    lnk = e.target
  }

  if ( ! lnk ) return;

  if ( lnk.nodeType == 3 )
  {
    // lnk is a textnode -- ascend parents until we hit a link
    lnk = getParent(lnk,"A");
  }

  if ( ! lnk ) return;

  if ( lnk.tagName == "SPAN" )
  {
    lnk = lnk.parentElement;
  }

  if (lnk.tagName == "B")
  {
    lnk = lnk.parentElement;
    lnk.setAttribute("nicetitle","CURRENT PAGE BEING VIEWED");
  }

  if (lnk.tagName == "IMG")
  {
    lnk = lnk.parentElement;
  }

  nicetitle = lnk.getAttribute("nicetitle");

  var d = document.createElementNS(XHTMLNS,"div");
  d.className = "nicetitle";
  tnt = document.createTextNode(nicetitle);
  pat = document.createElementNS(XHTMLNS,"p");
  pat.className = "titletext";
  pat.appendChild(tnt);
  d.appendChild(pat);

  if ( lnk.href )
  {
    tnd = document.createTextNode(lnk.href);
    pad = document.createElementNS(XHTMLNS,"p");
    pad.className = "destination";
    pad.appendChild(tnd);
    d.appendChild(pad);
  }

  STD_WIDTH = 300;

  if ( lnk.href )
  {
    h = lnk.href.length;
  }
  else
  {
    h = nicetitle.length;
  }

//////////////////////////////////////////////////////alert(nicetitle);

  if ( nicetitle.length )
  {
    t = nicetitle.length;
  }

  h_pixels = h*6; t_pixels = t*10;

  if ( h_pixels > STD_WIDTH )
  {
    w = h_pixels;
  }
  else if ( ( STD_WIDTH > t_pixels ) && ( t_pixels > h_pixels ) )
  {
    w = t_pixels;
  }
  else if ( ( STD_WIDTH > t_pixels ) && ( h_pixels > t_pixels ) )
  {
    w = h_pixels;
  }
  else
  {
    w = STD_WIDTH;
  }

  d.style.width = w + 'px';

  /*
  mx = lnk.offsetLeft;
  my = lnk.offsetTop;
  */
  mpos = findPosition(lnk);
  mx = mpos[0];
  my = mpos[1];
  //xy = getMousePosition(e);
  //mx = xy[0]; my = xy[1];

  d.style.left = (mx+15) + 'px';
  d.style.top = (my+35) + 'px';

  if (window.innerWidth && ((mx+w) > window.innerWidth))
  {
    d.style.left = (window.innerWidth - w - 25) + "px";
  }

  if (document.body.scrollWidth && ((mx+w) > document.body.scrollWidth))
  {
    d.style.left = (document.body.scrollWidth - w - 25) + "px";
  }

  document.getElementsByTagName("body")[0].appendChild(d);

  CURRENT_NICE_TITLE = d;
}


function hideNiceTitle(e)
{
  if ( ! document.getElementsByTagName ) return;

  if ( CURRENT_NICE_TITLE )
  {
    document.getElementsByTagName("body")[0].removeChild(CURRENT_NICE_TITLE);
    CURRENT_NICE_TITLE = null;
  }
}


// Add an eventListener to browsers that can do it somehow.
function addEvent(obj, evType, fn)
{
  if ( obj.addEventListener )
  {
    obj.addEventListener(evType, fn, false);
    return true;
  }
  else if ( obj.attachEvent )
  {
    var r = obj.attachEvent("on"+evType, fn);
    return r;
  }
  else
  {
    return false;
  }
}


function getParent(el, pTagName)
{
  if ( el == null )
  {
    return null;
  }
  else if ( el.nodeType == 1 && el.tagName.toLowerCase() == pTagName.toLowerCase() )
  {
    // Gecko bug, supposed to be uppercase
    return el;
  }
  else
  {
    return getParent(el.parentNode, pTagName);
  }
}


function getMousePosition(event)
{
alert ("Start getMousePosition()");
  if ( browser.isIE )
  {
    x = window.event.clientX + document.documentElement.scrollLeft
      + document.body.scrollLeft;
    y = window.event.clientY + document.documentElement.scrollTop
      + document.body.scrollTop;
  }

  if (browser.isNS)
  {
    x = event.clientX + window.scrollX;
    y = event.clientY + window.scrollY;
  }
  return [x,y];
}


// Determine browser and version.
function Browser()
{
  this.isIE    = false;
  this.isNS    = false;
  this.version = null;

  var ua = navigator.userAgent;

  var i;
  var s = "MSIE";
  if ((i = ua.indexOf(s)) >= 0)
  {
    this.isIE = true;
    this.version = ua.substr(i + s.length);
    return;
  }

  s = "Firefox/";
  if ((i = ua.indexOf(s)) >= 0)
  {
    this.isNS = true;
    this.version = ua.substr(i+ s.length);
    return;
  }

  s = "Netscape6/";
  if ((i = ua.indexOf(s)) >= 0)
  {
    this.isNS = true;
    this.version = ua.substr(i + s.length);
    return;
  }

  // Treat any other "Gecko" browser as NS 6.1.
  s = "Gecko";
  if ((i = ua.indexOf(s)) >= 0)
  {
    this.isNS = true;
    this.version = 6.1;
    return;
  }
}


<!---------------------->
<!--  CHANGING LINK   -->
<!---------------------->

var timerID, activeElement, oldColor, oldWeight;
var colorCount = 0;

var colorArray = new Array
(
'191970','FF0000','191970','FF0000'
);

var isIE = navigator.appName=='Microsoft Internet Explorer'?true:false;
var isOPERA = window.opera?true:false;

function ChangeColor()
{
  if (activeElement)
  {
    activeElement.style.color = '#' + colorArray[colorCount++];
  }
  if (colorCount==(colorArray.length-1))
  {
    colorCount= 0;
    activeElement.style.color = '#' + colorArray[colorCount++];
  }
}

function flashLink(eventIn)
{
  if (isOPERA) { return; }
  var srcElem = getObject(eventIn);
  var temp = "";
  if (srcElem.tagName == "A" && srcElem.href != '' && srcElem.overrideblink == null)
  {
    activeElement = srcElem;
    oldWeight = activeElement.style.fontWeight;
    activeElement.style.fontWeight='bold';
    oldColor = activeElement.style.color;
    activeElement.style.color = '#FF0000';
    timerID = setInterval("ChangeColor()", 1000);
  }
  return true;
}

function stopFlashLink(eventIn)
{
  var srcElem = getObject(eventIn);
  if (isOPERA && srcElem.className != 'rate_item') return;
  if (activeElement && srcElem.tagName == "A" && srcElem.href != '')
  {
    activeElement.style.color = oldColor;
    activeElement.style.fontWeight=oldWeight;
    activeElement = null;
    clearInterval(timerID);
  }
}

function getObject(eventIn)
{
  var srcElem;
  if(isIE)
  {
    srcElem = event.srcElement;
  }
  else
  {
    srcElem = eventIn.target;
  }
  return srcElem;
}

document.onmouseover = flashLink;
document.onmouseout  = stopFlashLink;

<!---------------------->
<!--  END LINK        -->
<!---------------------->








