var meModified = new Date(document.lastModified);
var domain='aafc'

var req;
var mypagename = getPageName();
var mypagefn=mypagename.replace(".html","")
//mypagefn = mypagefn.replace(".shtml","")
rememberTable = new Array()

var page_name = getPageName()

var cookieLastSeen=""
var pageLastSeen = ""

  cookieLastSeen=getCookie(page_name);
  if (cookieLastSeen == null) {
    cookieLastSeen="10/08/1951 00:00:00"
    }
  pageLastSeen = new Date(cookieLastSeen);
  setCookie(page_name,new Date(),offsetDays(364))


function pageinit() {
//var url = "../cgi-bin/gcountdir/gcount.pl?1=" + domain + "-" + mypagefn
//remoteGet(url)
  var myObj
  myObj = document.getElementById("feedbacklink")
  if (myObj) myObj.href=myObj.href+"&showprev="+document.location
  myObj = document.getElementById("lastmodcontent")
  if (myObj) myObj.innerHTML = "Modified: " + meModified;
  }

function remoteGet(url) {
  if (window.XMLHttpRequest) {
    req = new XMLHttpRequest();
    }
  else if (window.ActiveXObject) {
    isIE = true;
    req = new ActiveXObject("Microsoft.XMLHTTP");
    }
  if (req) {
    req.open("GET", url, true);
    req.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
    req.onreadystatechange = processReqChange;
    req.send(null);
    }
  }

//- Fcn: tagNew 1.3
// E.g.: <script language="JavaScript" type="text/javascript">tagNew("10/11/2002","new11.gif")</script>
// Global: pageLastSeen
function tagNew(datest,tryimg) {
  var tagdate = new Date(datest);
//alert(pageLastSeen+"/"+tagdate)
  if (tagdate >= pageLastSeen) {
    if (("undefined" == typeof tryimg) || (tryimg=="")) {
      document.write("<font color=FFFF00><b>New</b></font>");
      }
    else {
      document.write("<img src='"+tryimg+"' alt='Item Modified: "+tagdate+", your last visit: "+cookieLastSeen+"' />")
      }
    }
  }


function openclosediv(id) {
  var imgname, imgid, myObj, divObj
  imgid="img"+id
  myObj = document.getElementById(imgid)
  divObj = document.getElementById(id)
  if ((divObj) && (myObj)) {
    imgname=myObj.src
    if (-1 < imgname.indexOf("side")) {
      myObj.src = "arrow-black-down.gif";
      divObj.style.display="";
      }
    else {
      myObj.src = "arrow-black-side.gif";
      divObj.style.display="none";
      }
    }

  }

function processReqChange() {
  // only if req shows "loaded"
  if (req.readyState == 4) {
      // only if "OK"
    if (req.status == 200) {
      var mytext = req.responseText.split("'")
      document.getElementById("countercontent").innerHTML =  mytext[1]
      }
    else {
      document.getElementById("countercontent").innerHTML = "????"
      }
    }
  }

//- Fcn: getPageName 1.2
// Globals: (none, returns what will become page_name at top)
function getPageName () {
  var page_n=location.href
  var i=page_n.indexOf("?",0)
  if (-1 < i) {
    page_n=page_n.substring(0,i)
    }
  var ip=page_n.indexOf("#",0)
  if (-1 < ip) {
     page_n=page_n.substring(0,ip)
     }
  var i=page_n.indexOf("/",0)
  while (i > -1) {
    page_n=page_n.substring(1+i,page_n.length)
    i=page_n.indexOf("/",0)
    }
  if (page_n == "") { page_n = "index.html" };
  return page_n;
  }


function stripe(sTable,doTopRow) { // 20070826 use classAdd/classRemove
 /* recolor here */
 if (typeof sTable == "string") {
  sTable = document.getElementById(sTable);
 }

 // check if the table is defined before continuing
 if(sTable != undefined) {
  var row = null;

  // counter for visible rows
  var vr = 0;

  if (doTopRow) var startrow = 0
  else var startrow = 1

  //var myrows = sTable.rows
  var myrows = sTable.getElementsByTagName("TBODY")[0].rows // DevNote: JFK 20070726

  // go through each row in the table
  for(var i=startrow; i<myrows.length; i++) {
   row = myrows[i];
   if(i == 0) {
    prevRow = row;
   } else {
    prevRow = myrows[i-1];
   }

   spanningRow = false;

   // alert(row.childNodes[1].attributes.getNamedItem("colspan").value + "//" + row.childNodes[1].innerHTML);

  if (row.childNodes.length>0) {
   // if(row.childNodes[0].hasAttribute && row.childNodes[0].hasAttribute("colspan")) {  // IE doesn't have hasAttribute; try getAttribute
   if(row.childNodes[0].nodeName != "#text") {
    if((row.childNodes[0].getAttribute("colspan")) && (row.childNodes[0].attributes.getNamedItem("colspan").value > 1 )) { //&& prevRow.childNodes[0].attributes.getNamedItem("colspan").value == 1
     spanningRow = true;
    } else {
     spanningRow = false;
    }
   } else if(row.childNodes[1].hasAttribute("colspan")) { // && !prevRow.childNodes[1].hasAttribute("colspan")
     spanningRow = true;
    } else {
     spanningRow = false;
   }
   /* } else if(row.childNodes[1].attributes.length != 0) {
    if(row.childNodes[1].hasAttribute("colspan") && !prevRow.childNodes[1].hasAttribute("colspan")) {
     notSpanningRow = false;
    } else {
     notSpanningRow = true;
    }
   } */
  }
   // check if the row is visible... don't want to stripe invisible rows
   if(row.style.display != "none" && !spanningRow) {
    vr++;
    // if the row index is even, set the row class to the even
    if(vr % 2 == 0) {
     classAdd(row,"evenRow",true);
     classRemove(row,"oddRow");
    }
    else {
     classAdd(row,"oddRow",true);
     classRemove(row,"evenRow");
     }
   } else if(spanningRow) {
     row.className = prevRow.className;
   }

  } // end for loop
 }
}


function makeTableEditable(sTable, me) {
  if (typeof sTable == "string") {
    sTable = document.getElementById(sTable);
    }

 // check if the table is defined before continuing
  if(sTable != undefined) {
    var row = null;
    var cells = null;
    var cell = null;
    var myVal = null;
    var newVal = null;
    var myId = null;
    var myObj = null;
    var maxLen = new Array();

    if (!rememberTable[sTable.id]) rememberTable[sTable.id] = new Array()

    var isedit = false;
    var doit = true;

    if (-1 < me.value.indexOf("Cancel")) undoEdit = true
    else undoEdit = false

    // go through each row in the table
    for (var i=1; i<sTable.rows.length; i++) { // skip header
      row = sTable.rows[i];
      cells = row.getElementsByTagName('td')
      for (var j=0;j<cells.length;j++) {
        if (i == 1) maxLen[j] = 0;
        cell=cells[j]
        myVal = escape(cell.innerHTML)
        if (-1 < myVal.toUpperCase().indexOf("%3CINPUT")) {
          isedit=true;
          if (!undoEdit) {
            doit=false;
            alert("Some part of this table is already editable!")
            }
          j=cells.length+1;
          i=sTable.rows.length+1;
          }
        else {
          maxLen[j] = Math.min(20,Math.max(maxLen[j],myVal.length));
          }
        }
      } // end for loop

    if ((undoEdit) && (!isedit)) doit=false;

    if (doit) {
      for (var i=1; i<sTable.rows.length; i++) { // skip header
        row = sTable.rows[i];
        cells = row.getElementsByTagName('td')
        for (var j=0;j<cells.length;j++) {
          cell=cells[j]
          if (undoEdit) {
            myId = sTable.id + '_r' + i + '_c' + j+1
            newVal = rememberTable[sTable.id][myId]
            }
          else {
            myVal = cell.innerHTML
            myId = sTable.id + '_r' + i + '_c' + j+1
            rememberTable[sTable.id][myId] = myVal
            newVal = '<input id="' + myId + '" name="' + myId + '" value="' + myVal + '" size="' + maxLen[j] + '" />'
            }
          cell.innerHTML = newVal
          // if ((i==1) && (j==0)) alert(cell.type)
          }
        } // end for loop

      if (undoEdit) {
        me.value = "Edit Table"
        myObj = document.getElementById(sTable.id + "_submit")
        if (myObj) myObj.style.display="none";
        myObj = document.getElementById(sTable.id + "_prompt")
        if (myObj) myObj.style.display="none";
        myObj = document.getElementById(sTable.id + "_password")
        if (myObj) myObj.style.display="none";
        }
      else {
        me.value = "Cancel Edit"
        myObj = document.getElementById(sTable.id + "_submit")
        if (myObj) myObj.style.display="";
        myObj = document.getElementById(sTable.id + "_prompt")
        if (myObj) myObj.style.display="";
        myObj = document.getElementById(sTable.id + "_password")
        if (myObj) myObj.style.display="";
        }
      }
    }
 }

//- Function: "setCookie()"
//-   (External?: content\foocart.html)
//-   Set a cookie attribute/value
//-   Optional 3rd arg: when expire, a Date() object.  cf: offsetDays().  Null means ??
//-   Other optional arguments not used here.
function setCookie (name, value) {
  var args = setCookie.arguments;
  var len = setCookie.arguments.length;
  var expires = (len > 2) ? args[2] : null;
  var path = (len > 3) ? args[3] : null;
  var domain = (len > 4) ? args[4] : null;
  var secure = (len > 5) ? args[5] : false;
  document.cookie = name + "=" + escape (value) +
  ((expires == null) ? "" : ("; expires=" + expires.toGMTString())) +
  ((path == null) ? "" : ("; path=" + path)) +
  ((domain == null) ? "" : ("; domain=" + domain)) +
  ((secure == true) ? "; secure" : "");
  }

//- Function: "offsetDays()"
//-   Converts number of days to an offset Date object (e.g., for setCookie())
function offsetDays (days) {
  var args = offsetDays.arguments;
  var len = offsetDays.arguments.length;
  var retDate = (len>1) ? args[1] : new Date();
  retDate.setTime(retDate.getTime() + days * 24 * 60 * 60 * 1000);
  return retDate;
  }

//- Fcn: getCookieVal 1.1
//-   Return value at startpoint, assume delimited by ';'
function getCookieVal (startpoint) {
  var cook=document.cookie.replace(/\n|\r|\r\n|\n\r/g,"")
//alert(cook);
  var endindex = cook.indexOf (";", startpoint);
  if (endindex == -1) endindex = cook.length;
  return unescape(document.cookie.substring(startpoint, endindex));
  }

//- Fcn: getCookie 1.1
//-   External: (content\foocart.htm?), newuser.html, std\uncookie.js
//-   Return value for a attribute in cookie
function getCookie (name) {
  var prefix = name + "=";
  var prefixlen = prefix.length;
  var strlen = document.cookie.length;
  var i = 0;
  while (i < strlen) {
    var j = i + prefixlen;
    if (document.cookie.substring(i, j) == prefix) return getCookieVal (j);
    i = document.cookie.indexOf(" ", i) + 1;
    if (i == 0) break;
    }
  return null;
  }

//- Function: "deleteCookie()"
//-   External: (content\foocart.htm?), newuser.html, std\uncookie.js
//-   Delete an attribute/value pair from cookie
function deleteCookie (name) {
  var expires = new Date();
  expires.setTime (expires.getTime() - 1);
  var cookieval = getCookie (name);
  document.cookie = name + "=" + cookieval + "; expires=" + expires.toGMTString();
  }

//- Fcn: initialize 1.0
// Globals: page_name (from getPageName())
function initialize (htmlfile) {
  if (document.title) { document.title=hostEntity+" - Version "+version+", updated: "+meModified }
  if (page_name == "endsurvey.html") {
    opener.closePopup();
//    setTimeout("window.close()";2000);
    }
  if ((allowFloat) && ("undefined" != typeof document.getElementById("floatLayer")) && ("undefined" != typeof floatLayer)) {
    setupFloatLayer();
    }
  if ("yes" == getCookie("scrollBottom")) {
    scrollToBottom()
    deleteCookie("scrollBottom")
    }
  }

