/* -*- c++ -*-
 Javascript program returning number of days remaining as text such
 as "next week".
*/

function ece_time_relative_write(event_date_string)
{
  var event_relative = ece_time_relative_string(event_date_string);
  if( event_relative != "" )
    document.writeln
      (" <span class=\"newsitems-time-relative-separator\">&mdash;</span>"
       + "&nbsp;<span class=\"newsitems-time-relative-text\">"
       + event_relative + "</span>\n");
}

function ece_time_relative_string(event_date_string)
{
  var event_time = new Date(event_date_string);
  var now_time = new Date();
  var days_to =
    Math.ceil(( event_time.getTime() - now_time.getTime() ) / 86400000);

  var el = '<font color="#ff0000">';
  var er = "</font>";

  if( days_to < 0 ) return "";

  if( days_to == 0 ) return el + "Today" + er;

  if( days_to == 1 ) return el + "Tomorrow" + er;

  var now_dow = now_time.getDay();
  var event_dow = event_time.getDay();

  var days = new Array("Sunday","Monday","Tuesday","Wednesday",
		       "Thursday","Friday","Saturday");

  var event_day = days[event_dow];

  if( now_dow + days_to == event_dow ) return "This&nbsp;" + event_day;

  var weeks_to = ( days_to + now_dow - event_dow ) / 7;

  if( weeks_to == 0 ) return "";

  if( weeks_to == 1 ) return event_day + "&nbsp;Next&nbsp;Week";

  var number_text = new Array("Zero","One","Two","Three","Four","Five",
                              "Six","Seven","Eight","Nine","Ten",
                              "Eleven", "Twelve"
                              );

  if( weeks_to < 11 ) return "In&nbsp;" + number_text[weeks_to] + "&nbsp;Weeks";

  var months_to = Math.floor(weeks_to / 4);

  if( months_to < 13 )
    return "In&nbsp;" + number_text[months_to] + "&nbsp;Months";

  return "In&nbsp;" + months_to + "&nbsp;Months";

  var now_mon = now_time.getMonth();
  var event_mon = event_time.getMonth();
  var month_text = new Array
    ( "January",  "February",  "March",  "April",  "May",  "June",  "July",
      "August",  "September",  "October",  "November",  "December" );

  if( weeks_to < 49 && now_mon != event_mon )
    return "This " + month_text[event_mon];

  return month_text[event_mon] + "&nbsp;" + event_time.getFullYear();

}

function ece_mailto_lsu(prefix)
{
  var p2 = "lsu";
  var p3 = ".ignoreme";
  var p4 = ".edu";
  var address = prefix + p2 + p4;
  document.write
    ("<a href=\"mailto:" + address + "\"><tt>" + address + "</tt></a>");
}
