// JavaScript Document
//<![CDATA[

function getEvents(feedUri) {
	//explicit call to specify error handler to get rid of unsupported browser alert in Safari/Opera
	google.gdata.client.init(handleError);

	// Retrieve events with a date query
	// Create the calendar service object
	var calendarService = new google.gdata.calendar.CalendarService('LibHours');
	
	// Create a CalendarEventQuery
	var query = new google.gdata.calendar.CalendarEventQuery(feedUri);

	// Create and set the minimum and maximum start time for the date query	
	var t = new Date()
	var y = t.getFullYear()
	var d = t.getDate().toString()
		if (d.length <= 1) {d = "0" + d}
	var d2 = (t.getDate()+1).toString() //add day for tomorrow
		if (d2.length <= 1) {d2 = "0" + d2}
	var m = (t.getMonth()+1).toString() //add one to month because months start at zero
		if (m.length <= 1) {m = "0" + m} //add zero if month is single digit
	var today = y + "-" + m + "-" + d + "T07:00:00.000";
	var tomorrow = y + "-" + m + "-" + d2	
	
	var startMin = google.gdata.DateTime.fromIso8601(today); //'2008-07-29T00:00:00.000-08:00'
	var startMax = google.gdata.DateTime.fromIso8601(tomorrow);
	query.setMinimumStartTime(startMin);
	query.setMaximumStartTime(startMax);

	//this query parameter eliminates inlcuding reccuring events (hopefully fixes problem of multiple hours
	//displaying for certain days when nothing shows on calendar)															  
	query.setSingleEvents('true');
	
	// The callback that will be called when getEventsFeed() returns feed data
	var callback = function(root) {
	
	  // Obtain the array of matched CalendarEventEntry
	  var eventEntries = root.feed.getEntries();
	
	  // If there is matches for the date query
	  if (eventEntries.length > 0) {
		//start list html
		var list = '<ul>'
	  
		for (var i = 0; i < eventEntries.length; i++) {
		  var event = eventEntries[i];
		  // Print the event title of the matches
		  list = list + '<li>' + event.getTitle().getText() + '</li>';		  
		  
		}
		//close ul in list var
		list = list + '</ul>'
		//write list html to document
		document.getElementById('calevents').innerHTML += list;
	  } else {
		// No match is found for the date query
		//PRINT('no events are matched from the query!');
		document.getElementById('calevents').innerHTML += '<!-- no query data -->';
	  }
	}
	
	// Error handler to be invoked when getEventsFeed() produces an error
	var handleError = function(error) {
	  document.getElementById('calevents').innerHTML += "<!--" + error + "-->";
	}
	
	// Submit the request using the calendar service object. Notice the CalendarEventQuery 
	// object is passed in place of the feed URI
	calendarService.getEventsFeed(query, callback, handleError);
}

function hoursEvents() {
	//clear calevents div
	document.getElementById('calevents').innerHTML = "";
	
	// get hours
	feedUri = 'http://www.google.com/calendar/feeds/library.greenwood%40gmail.com/public/full';
	getEvents(feedUri);
	
	//now get events
	feedUri = 'http://www.google.com/calendar/feeds/k0suautp5ea0ncbq6o6dhrr0is@group.calendar.google.com/public/full';
	getEvents(feedUri);
}
//]]>
