

window.onload = function() {

  calvis.ready(main);

}



function main() {

  var calId = 'uva.democrats@gmail.com';



  var calendar = new calvis.Calendar();



  // set the CSS IDs for various visual components for the calendar container

  calendar.setCalendarBody('calendarBodyDiv');

  calendar.setStatusControl('statusControlDiv');

  calendar.setNavControl('navControlDiv');

  calendar.setViewControl('viewControlDiv');

  calendar.setEventCallback('click', displayEvent);

  calendar.setEventCallbackDay('click', displayAllEvents);

  calendar.setEventCallbackShowDay('click', showHiddenEvents);



  // set the calenar to pull data from this Google Calendar account

  calendar.setPublicCalendar(calId);  

  calendar.setLoginControl('loginControlDiv');  



  calendar.setDefaultView('month');

  // display the calendar

  calendar.render();  

}





//displays event info below calendar

function displayEvent(event) {    

  var title = event.getTitle().getText();  

  var date = event.getTimes()[0].getStartTime().getDate();

  var content = event.getContent().getText();  

  

  var eventHtml = [];

  eventHtml.push(date.toString());

  eventHtml.push(title);

  eventHtml.push(content); 



  document.getElementById('eventDisplayDiv').innerHTML = eventHtml.join('');

}

function displayAllEvents(num, event) {    

  var title = event.getTitle().getText();  

  var date = event.getTimes()[0].getStartTime().getDate();
  var date2=date.toString().substr(0,21);
  var content = event.getContent().getText();
	  var location_ = event.getLocations()[0].getValueString().split('@')[0];
	 var day = date2.substr(8,2);
var month = date2.substr(4,3);

var currentDate = new Date();
var date3=currentDate.toString().substr(0,21);
var currentDay= date3.substr(8,2);
var currentMonth = date3.substr(4,3);
//allows multiple additions to the selected div

var cell = jQuery('#eventlist');

  var eventHtml = [];

//creates div
  eventHtml.push('<div class="');
eventHtml.push(num);
  eventHtml.push('hideday ');
//alert(currentDate);
//displays current day
if(day==currentDay && month==currentMonth){
$(".showday").addClass("hideday");
$(".showday").removeClass("showday");
eventHtml.push('showday">');
var day="#" + num;
$(day).addClass("selected");

}
else{
eventHtml.push('hideday">');
}
	//creates body for inside div

  //eventHtml.push(date.toString());
  eventHtml.push('<dl class="calendar">');
	  eventHtml.push('<dt>');
	  eventHtml.push(title);
	  eventHtml.push('</dt>');
	
		  eventHtml.push('<dd class="date">');
		  eventHtml.push(date2);
		  eventHtml.push('</dd>');
		 
		  eventHtml.push('<dd class="location">');
		  eventHtml.push(location_);
		  eventHtml.push('</dd>');
		  
		  eventHtml.push('<dd class="content">');
		  eventHtml.push(content); 
		  eventHtml.push('</dd>');
  eventHtml.push('</dl>');
  eventHtml.push('</div>');



	var eventDiv = jQuery(eventHtml.join(''));

	cell.append(eventDiv);

  //document.getElementById('eventlist').innerHTML = eventHtml.join('');


}



function showHiddenEvents(num){

	var num = num;
	/*for (var i in num) {
			 var divId= "." + i + "hideday";
			 var day="#"+i.substr(7,8);
	}
	//alert(divId.substr(1,1));
	if(divId.substr(1,1)!='c'){
			var divId= "." + num.id + "hideday";
			var day="#"+num.id.substr(7,8);
	}*/
	
	var divId="." + num + "hideday";
	//should hide all previously visible classes
	var day="#" + num;
	$(".showday").addClass("hideday");
	$(".showday").removeClass("showday");
	
	//should reset selected day
	$(".selected").removeClass("selected");

	$(divId).removeClass("hideday");
	$(divId).addClass("showday");
	$(day).addClass("selected");

	//alert(day);

}
 



