//email address with link on email address
function eal( id, server ) {
  if( server == 'iri' ) { server = 'iri.columbia.edu'; }
  if( server == 'iri.ldeo.columbia.edu' ) { server = 'iri.columbia.edu'; }
  if( server == 'iri.ldgo.columbia.edu' ) { server = 'iri.columbia.edu'; }
  document.write( '<a href="mailto:' + id + '@' + server + '">' + id + '@' + server + '</a>' );
}

//email address only
function ea( id, server ) {
  if( server == 'iri' ) { server = 'iri.columbia.edu'; }
  if( server == 'iri.ldeo.columbia.edu' ) { server = 'iri.columbia.edu'; }
  if( server == 'iri.ldgo.columbia.edu' ) { server = 'iri.columbia.edu'; }
  document.write( id + '@' + server );
}

//email address with link on image
function eai( id, server ) {
  if( server == 'iri' ) { server = 'iri.columbia.edu'; }
  if( server == 'iri.ldeo.columbia.edu' ) { server = 'iri.columbia.edu'; }
  if( server == 'iri.ldgo.columbia.edu' ) { server = 'iri.columbia.edu'; }
  document.write( '<a href="mailto:' + id + '@' + server + '">' + '<img src="/images/mail1.gif" border=0></a>' );
}

//email address with name as link
function ean( id, server, name ) {
  if( server == 'iri' ) { server = 'iri.columbia.edu'; }
  if( server == 'iri.ldeo.columbia.edu' ) { server = 'iri.columbia.edu'; }
  if( server == 'iri.ldgo.columbia.edu' ) { server = 'iri.columbia.edu'; }
  document.write( '<a href="mailto:' + id + '@' + server + '">' + name + '</a>' );
}

//open new (small) window for display
function nw(url,windowname,WWidth,WHeight) {
    var newBars = 'toolbar=no,location=0,directories=no,status=no,menubar=0,';
    var newOptions = 'scrollbars=no,resizable=yes,alwaysRaised=yes,dependent=yes,'
        + 'copyhistory=1,hotkeys=yes,screenX=0,screenY=0,'
	+ 'height=' + WHeight + ',width=' + WWidth;
    var newFeatures = newBars + newOptions;
    window.open(url,windowname,newFeatures);
}

//print lastmodified line
function lmodified() {
  if( Date.parse( document.lastModified) != 0)
    document.write('<div align=right><font face="verdana,sans-serif" size=-2 point-size=7pt color=#000000><i>Last modified: ' + document.lastModified + '</i></font></div>');
}

//print lastmodified line
function lastmodified(time) {
  var $txttime = 0;
  if( Date.parse( document.lastModified) != 0)
    document.write('<p align=right><font face="verdana,sans-serif" size=-2 point-size=7pt color=#000000><i>Last modified: ' + document.lastModified + '</i></font></p>');
}

//display new button if satisfies date condition
// startdate: yyyy-mm-dd, Lag: in day, days to display counting from startdate
function newbutton( startdate, Lag ) {
  var dateArray = startdate.match( /(\d{4})-(\d{1,2})-(\d{1,2})/ );
  var date = new Date( dateArray[1],dateArray[2]-1,dateArray[3]-(-1),0,0,0,0 );
  var time = date.getTime();

  var lgdate = new Date( 1970,0,Lag-(-1),0,0,0,0 );
  var lgtime = lgdate.getTime();

  var datenow = new Date();
  var timenow = datenow.getTime();

  var diff = time + lgtime - timenow;
  if( diff > 0 ) { document.write( '<img src="/images/new.gif" border=0>' ); }
}


// updated 3/20/2003
//display the content of 'String' in red, <sup>, <b>, size=-1 if satisfy time range
// datestring: yyyy-mm-dd
function showred( string, startdate, Lag ) {
  var stdateArray = startdate.match( /(\d{4})-(\d{1,2})-(\d{1,2})/ );
  var stdate = new Date( stdateArray[1],stdateArray[2]-1,stdateArray[3]-(-1),0,0,0,0 ); //mid-day
  var sttime = stdate.getTime();

  var lgdate = new Date( 1970,0,Lag-(-1),0,0,0,0 );    
  var lgtime = lgdate.getTime();

  var timeold =  sttime + 86400000;	//86400000milisecond=1day
  var timetotal = sttime + lgtime;

  var datenow = new Date();
  var timenow = datenow.getTime();

  if( timenow < timeold ) { 
    document.write( '<sup><b><font size=-1 color="red">' + string + '</font></b></sup>' ); 
  }
  else {
   if( timenow < timetotal ) {
     document.write( '<sup><b><font size=-1 color="red">' + string + '</font></b></sup>' ); 
   }
  }
}

//display 'string' in red if satisfies date condition, do not display otherwise
//startdate: yyyy-mm-dd; Lag: day, less than 265, #of mon may have small error
function show1cstr( string, startdate, Lag ) {
  var stdateArray = startdate.match( /(\d{4})-(\d{1,2})-(\d{1,2})/ );

//document.write( '(input=' + stdateArray[3] + ')' );
//mid-night-1day
// day-1: count one full day as 1 day
  var stdate = new Date( stdateArray[1],stdateArray[2]-1,stdateArray[3]-(-1),0,0,0,0 ); 
  var sttime = stdate.getTime();
//  var mon = stdate.getMonth();
//  var day = stdate.getDate();
//  var hour = stdate.getHours();
//document.write( '(st: ' + mon + ' / ' + day + ' / ' + hour + ' | ' + sttime + ')' );

//GMT reference time, returns 5 for EST; 1969,11,31,19,0,0,0 returns 0 (HAB SST?)
//if Lag=0, red string will shown til 5am the next day following the start date
  var lgdate = new Date( 1970,0,Lag-(-1),0,0,0,0 );    
  var lgtime = lgdate.getTime();		

  var timetotal = sttime + lgtime;

  var datenow = new Date();
  var timenow = datenow.getTime();

  if( timenow < timetotal ) { 
    document.write( '<font color="red">' + string + '</font>' ); 
  }
}

//display 'string' in red if age<lag, in default color otherwise
//datestring: yyyy-mm-dd
function show2cstr( string, startdate, Lag ) {
  var stdateArray = startdate.match( /(\d{4})-(\d{1,2})-(\d{1,2})/ );
  var stdate = new Date( stdateArray[1],stdateArray[2]-1,stdateArray[3]-(-1),0,0,0,0 ); //mid-day
  var sttime = stdate.getTime();

  var lgdate = new Date( 1970,0,Lag-(-1),0,0,0,0 );    
  var lgtime = lgdate.getTime();

  var timetotal = sttime + lgtime;

  var datenow = new Date();
  var timenow = datenow.getTime();

  if( timenow < timetotal ) { 
    document.write( '<font color="red">' + string + '</font>' ); 
  }
  else {
    document.write( string ); 
  }
}

//for home page, display 'string' in red if age<lag, in blue otherwise, color otherwise, in helvetica, 7pt
//datestring: yyyy-mm-dd
function show2cstrhome( string, startdate, Lag ) {
  var stdateArray = startdate.match( /(\d{4})-(\d{1,2})-(\d{1,2})/ );
  var stdate = new Date( stdateArray[1],stdateArray[2]-1,stdateArray[3]-(-1),0,0,0,0 ); //mid-day
  var sttime = stdate.getTime();

  var lgdate = new Date( 1970,0,Lag-(-1),0,0,0,0 );    
  var lgtime = lgdate.getTime();

  var timetotal = sttime + lgtime;

  var datenow = new Date();
  var timenow = datenow.getTime();

  if( timenow < timetotal ) { 
    document.write( '<font face="helvetica,sans-serif" point-size=7pt color="red" size=-2>' + string + '</font>' ); 
//    document.write( '<font face="western,fantasy" color="red">' + string + '</font>' ); 
//    document.write( '<font face="ribbon,cursive" color="red">' + string + '</font>' ); 
  }
  else {
    document.write( '<font face="helvetica,sans-serif" point-size=7pt color="#333399" size=-2>' + string + '</font>' ); 
  }
}

//display 'string' in red if age<lag, in darkred if lag<age<2xlag, in default color otherwise
//startdate: yyyy-mm-dd, Lag: day
function show3cstr( string, startdate, Lag ) {
  var stdateArray = startdate.match( /(\d{4})-(\d{1,2})-(\d{1,2})/ );
  var stdate = new Date( stdateArray[1],stdateArray[2]-1,stdateArray[3]-(-1),0,0,0,0 ); //mid-day
  var sttime = stdate.getTime();

  var lgdate = new Date( 1970,0,Lag-(-1),0,0,0,0 );
  var lgtime = lgdate.getTime();

  var datenow = new Date();
  var timenow = datenow.getTime();

  var time1 = sttime + lgtime;
  var time2 = sttime + lgtime + lgtime;
  if( timenow > time2 ) { document.write( string ); }
  else {
    if( timenow < time1 ) {
      document.write( '<font color="red">' + string + '</font>' ); 
    }
    else {
      document.write( '<font color="darkred">' + string + '</font>' ); 
    }
  }
}

//display "update" button if satisfies date condition
//datestring: yyyy-mm-dd, cut-off date 
function showupdatebutton( datestring ) {
  var dateArray = datestring.match( /(\d{4})-(\d{1,2})-(\d{1,2})/ );
  var nextdate = new Date( dateArray[1],dateArray[2]-1,dateArray[3],14,36,0,0 );
  var nexttime = nextdate.getTime();

  var datenow = new Date();
  var timenow = datenow.getTime();

  var diff = nexttime - timenow;
  if( diff > 0 ) { document.write( '<img src="/images/update.gif" border=0>' ); }
}

