/* JavaScript to generate a 'tablewidth'-wide e-mail table
   Copyright 2000 by Richard V T Anderson.  All rights reserved.
   e-mail anderson@pobox.com
*/
var resizeflag; // to correct a bug in NN4.0x
  // minimum browser detection -- this stuff works only with JavaScript 1.2+
  // browsers: NN4+ and IE4+.  There are so few other browsers that I don't care.
var nn = (navigator.appName.indexOf("Netscape")  != -1);
if (nn) var nnversion = parseFloat(navigator.appVersion);
var ie  = (navigator.appName.indexOf("Microsoft") != -1);
var tablewidth = 3;




/* This seems not to work with IE (2007/09/05) fix sometime

function ReloadWhenResized() {
  if (nnversion) {
    if (nnversion < 4.5) {
        // onResize gets triggered by a load; as the page is loaded the resize
        // flag is set to false; the incorrectly triggered onResize will ignore
        // the reload, but will permit reloading if this code is executed as a 
        // result of a 'real' Resize event.  Very very hokey!!
      if (resizeflag) {
        location.reload();
      }
      else {
        // we arrive here if the onResize has been triggered by a load operation.
        // we set the flag to permit a subsequent 'real' Resize event to reload
        // the page (the reload will toggle the switch to false so when it triggers
        // the false Resize we won't get caught in a loop).
        resizeflag = true;
      }
    }
    else location.reload();
  }
  else location.reload();
}
 
window.onresize = ReloadWhenResized;

*/




function setTableWidth() {
  if (ie) tablewidth = Math.floor(document.body.clientWidth / 240);
  if (nn) tablewidth = Math.floor(window.innerWidth / 240);
     // defaults to 3 if oddball browser
}

var oneweek = (7 * 24 * 60 * 60 * 1000); //a week's worth of milliseconds
current = new Date();
var now = current.getTime();
var weekago = now - oneweek;
var twoweeksago = weekago - oneweek;
var monthago = twoweeksago - oneweek -oneweek;

function HowOld(yyyy,mm,dd) {
  temptime = new Date();
  temptime.setFullYear(yyyy);
  temptime.setMonth(mm-1); // mm starts at zero
  temptime.setDate(dd);
  tempsecs = temptime.getTime();
  if (tempsecs < monthago) return(0);
  if (tempsecs < twoweeksago) return(2);
  return(1);
}

function buildcell(addrindex,rowindex) {
  var tdfront = "<td align=\"left";
  var tdtail = "</a></td>";
/* just in case we want to change the appearance sometime
  if (rowindex == 1) tdfront += "left";
  else if (rowindex < tablewidth) tdfront += "center";
       else tdfront += "right";
*/
  tdfront += "\"><a href=\"mailto:" + addrs[addrindex].e + "\">";
    // see if we need a recent activity star
  if (addrs[addrindex].d) {
    switch(HowOld(addrs[addrindex].d.substr(6,4), addrs[addrindex].d.substr(0,2), addrs[addrindex].d.substr(3,2))) {
      case 1:
        tdfront += "<img src=\"./images/redstar.gif\" width=\"14\" height=\"12\" border=\"0\">\&nbsp\;\&nbsp\;";
        break;
      case 2:
        tdfront += "<img src=\"./images/bluestar.gif\" width=\"14\" height=\"12\" border=\"0\">\&nbsp\;\&nbsp\;";
        break;
    }
  }
    // change display for deceased persons
  if (addrs[addrindex].f)
    tdfront += "<B><FONT style=\"color:000000;font-weight:bold\">" + addrs[addrindex].n + "</FONT></B><FONT style=\"font-size : 67%\"> -" + addrs[addrindex].f + "</FONT>";
  else
    tdfront += addrs[addrindex].n;
  return(tdfront + tdtail);
}

