// Calendar at a glance view:
function glance(elementID, jsonObj) {
  var e = document.getElementById(elementID);
  var j = 0;
  var eventlist = new Array();
  var t = "";

  // get events 
  for (i = 0; i < jsonObj.bwEventList.events.length; i++) {
    eventlist[j] = i;
    j++;
  }

  // three column view (with tables)
  var col = Math.ceil(j/3);
  t += "<table><tbody><tr><td>";
  for(k in eventlist){
    var isSymposium = false;        
    // check for symposium
    for (i=0; i<jsonObj.bwEventList.events[eventlist[k]].categories.length; i++) {
      if (jsonObj.bwEventList.events[eventlist[k]].categories[i] == "Symposium") {
        isSymposium = true;
      }
    }
    
    // set the display date
    if (jsonObj.bwEventList.events[eventlist[k]].calendar.name == "Exhibits" || isSymposium) {
      dispdate = jsonObj.bwEventList.events[eventlist[k]].start.longdate.substr(0,jsonObj.bwEventList.events[eventlist[k]].start.longdate.indexOf(", 2008"));
      dispdate += " - ";
      var exenddate = jsonObj.bwEventList.events[eventlist[k]].end.longdate.substr(jsonObj.bwEventList.events[eventlist[k]].end.longdate.indexOf(" "), jsonObj.bwEventList.events[eventlist[k]].end.longdate.indexOf(", 2008"));
      dispdate += " " + exenddate;            
    } else {
      dispdate =  jsonObj.bwEventList.events[eventlist[k]].start.longdate;
      dispdate = dispdate.substr(0,dispdate.indexOf("2008"));
      dispdate += " " + jsonObj.bwEventList.events[eventlist[k]].start.time;
    }
    
    // set the display location
    disploc = jsonObj.bwEventList.events[eventlist[k]].location.address;
    if (disploc.match("EMPAC") != null) {
      disploc = disploc.substring(5);
    }
    
    // output the events (each event is in a ul)
    //t += "<ul><li><a href=\"http://www2.empac.rpi.edu:8080" + jsonObj.bwEventList.events[eventlist[k]].link.substring(24) + "\">" + jsonObj.bwEventList.events[eventlist[k]].summary + "</a></li>";
    t += "<ul><li><a href=\"" + jsonObj.bwEventList.events[eventlist[k]].link + "\">" + jsonObj.bwEventList.events[eventlist[k]].summary + "</a></li>";
    if(jsonObj.bwEventList.events[eventlist[k]].categories.length > 0) {
      t += "<li>" + jsonObj.bwEventList.events[eventlist[k]].categories[0] + " | " + disploc + "</li>";
      t += "<li>" + dispdate + "</li>";
    } else {
      t  +=  "<li>" + dispdate + " | " + disploc + "</li>";
    }
    t += "</ul>";
    if( (parseInt(k)+1)%col == 0) {
      t += "</td><td>";
    }
  }
  t += "</td></tr></tbody></table>";
  e.innerHTML = t;
}

// output the weekend list of events with images
function weekendlist(elementID){

  var e = document.getElementById(elementID);
  var j = 0;
  var eventlist = new Array();
  var t = "";
  var eo = 'even';

  // get events
  for (i = 0; i < bwObject.bwEventList.events.length; i++) {
    eventlist[j] = i;
    j++;
  }

  for(k in eventlist){
    // set the display dates
    dispdate =  bwObject.bwEventList.events[eventlist[k]].start.longdate;
    dispdate = dispdate.substr(0,dispdate.indexOf("2008"));
    dispdate += " " + bwObject.bwEventList.events[eventlist[k]].start.time;
    
    // set the display location
    disploc = bwObject.bwEventList.events[eventlist[k]].location.address;
    if (disploc.match("EMPAC") != null) {
      disploc = disploc.substring(5);
    }
    
    // check for symposium
    var isSymposium = false;
    for (i=0; i<bwObject.bwEventList.events[eventlist[k]].categories.length; i++) {
      if (bwObject.bwEventList.events[eventlist[k]].categories[i] == "Symposium") {
        isSymposium = true;
      }
    }

    
   //for even|odd highlighting
    if(eo == 'even') {
      eo = "odd";
    } else {
      eo = "even";
    }
// 		t +=   "<div class=\"" + eo + "\"><h3><a href=\"http://www2.empac.rpi.edu:8080" + bwObject.bwEventList.events[eventlist[k]].link.substring(24) + "\">" + bwObject.bwEventList.events[eventlist[k]].summary + "</a></h3>";
            
    t +=   "<div class=\"" + eo + "\"><h3><a href=\"" + bwObject.bwEventList.events[eventlist[k]].link + "\">" + bwObject.bwEventList.events[eventlist[k]].summary + "</a></h3>";
    if (bwObject.bwEventList.events[eventlist[k]].xproperties['X-BEDEWORK-IMAGE']) {
      t += "<img src=\"" + bwObject.bwEventList.events[eventlist[k]].xproperties['X-BEDEWORK-IMAGE'].values.text + "\" />";
    }
    if (bwObject.bwEventList.events[eventlist[k]].calendar.name == "Exhibits" || isSymposium) {
      var exibdates = '<p class=\"date\">';
      exibdates += bwObject.bwEventList.events[eventlist[k]].start.longdate.substr(0,bwObject.bwEventList.events[eventlist[k]].start.longdate.indexOf(", 2008"));
      exibdates += " - ";
      exibdates += bwObject.bwEventList.events[eventlist[k]].end.longdate.substr(0,bwObject.bwEventList.events[eventlist[k]].end.longdate.indexOf(", 2008"));
      t += exibdates;
    } else {
      t += '<p class=\"date\">' + dispdate;
    }
    t +=  " | " + disploc + "</p>";
    t +=  "<p>" + bwObject.bwEventList.events[eventlist[k]].description + "</p>";
    t += "</div>";
  }

  e.innerHTML = t;
}

// produce the event box on an event page
function eventdata(elementID, disp){
	var e = document.getElementById(elementID);
  var t = '';
	 
	//display the duration if it looks good
	var dispdate =  bwObject.bwEvent.start.longdate;
	dispdate = dispdate.substr(0,dispdate.indexOf(","));
	var stime = bwObject.bwEvent.start.utcdate;
	stime = stime.substr(stime.indexOf("T")+1, 4);
	var etime = bwObject.bwEvent.end.utcdate;
	etime = etime.substr(etime.indexOf("T")+1, 4);
	var dur = etime - stime;
    
  // check for symposium
  var isSymposium = false;
  for (i=0; i<bwObject.bwEvent.categories.length; i++) {
    if (bwObject.bwEvent.categories[i] == "Symposium") {
      isSymposium = true;
    }
  }
	 
	var dispdur = "";
  if(bwObject.bwEvent.calendar.name == "Exhibits" || isSymposium){
    dispdur = "";
  } else {
    /*  // keep for reference and ability to revert
    if(bwObject.bwEvent.end.shortdate == bwObject.bwEvent.start.shortdate) {
      dispdur = '<p><strong>Concludes:</strong> ' + bwObject.bwEvent.end.time + '</p>';
    } else {
      var dispshortdate = bwObject.bwEvent.end.shortdate;
      dispdur = '<p><strong>Concludes:</strong> ' + dispshortdate.substr(0,dispshortdate.lastIndexOf("/")) + ' ' + bwObject.bwEvent.end.time  + '</p>';
    }*/
    var startDateStr = bwObject.bwEvent.start.longdate + " " + bwObject.bwEvent.start.jstime;
    var endDateStr = bwObject.bwEvent.end.longdate + " " + bwObject.bwEvent.end.jstime;
    var duration = Date.parse(endDateStr) - Date.parse(startDateStr); // duration in milliseconds
    var minutesDur = Math.round(duration/(1000*60)); // full minutes
    
    dispdur = '<p><strong>Duration:</strong> ' + minutesDur + ' minutes</p>';
  }

	t += '<h4>' + bwObject.bwEvent.summary + '</h4>';
  if(bwObject.bwEvent.calendar.name == "Exhibits" || isSymposium) {
    t += '<p>' + bwObject.bwEvent.start.shortdate.substr(0,bwObject.bwEvent.start.shortdate.lastIndexOf("/")); 
    t += ' - ';
    t += bwObject.bwEvent.end.shortdate.substr(0,bwObject.bwEvent.end.shortdate.lastIndexOf("/")) + '<br />';
  } else {
    t += '<p>' + dispdate + '<br />';
	  t += bwObject.bwEvent.start.time + '<br />';
  }
  
  disploc = bwObject.bwEvent.location.address;
  if (disploc.match("EMPAC") != null) {
    disploc = disploc.substring(5);
  }
  
	t += disploc + '</p>';
	t += '<p><strong>Free and Open to the Public</strong></p>';
	t += dispdur;

  e.innerHTML = t;

	//print out ical link
  s = "http://events.rpi.edu/misc/export.gdo?b=de";
  s += "&subid=" + bwObject.bwEvent.subscriptionId;
  s += "&calPath=" + bwObject.bwEvent.calPath;
  s += "&guid=" + bwObject.bwEvent.guid;
  s += "&recurrenceId=" + bwObject.bwEvent.recurrenceId;
  s += "&nocache=no&contentName=";
  s += bwObject.bwEvent.guid + ".ics";

  var headelements = document.getElementById('eventInfo').getElementsByTagName('h3');
  headelements[0].innerHTML = "Event Info:<a href=\""+s+"\"><img border=\"0\" src=\"http://www.rpi.edu/dept/cct/apps/rpi-bedework-3.4.1.1/calrsrc.MainCampus/images/empacIcalIcon.gif\" /></a>";
}


// initialize iframe with registration application
function setiframe(elementId, disp) {
  if(disp == 1) {
    s = "http://reg.empac.rpi.edu/empacreg/init.do?";
    s += "subid=" + bwObject.bwEvent.subscriptionId;
    s += "&calPath=" + bwObject.bwEvent.calPath;
    s += "&guid=" + bwObject.bwEvent.guid;
    s += "&recurrenceId=" + bwObject.bwEvent.recurrenceId;
    e = document.getElementById('reg');
    e.src = s;
    e.style.display = "block";
  }	         
}
