onSelectionChanged({detail: ArrayOfEvents}); 
function unifinderOnSelect( event ){   if( event.target.view.selection.getRangeCount() == 0 )       return;   var ArrayOfEvents = new Array( );      gCalendarEventTreeClicked = true;      var calendarEvent;   //get the selected events from the tree   var tree = document.getElementById( UnifinderTreeName );   var start = new Object();   var end = new Object();   var numRanges = tree.view.selection.getRangeCount();      for (var t=0; t<numRanges; t++){      tree.view.selection.getRangeAt(t,start,end);            for (var v=start.value; v<=end.value; v++){         try {            calendarEvent = tree.eventView.getCalendarEventAtRow( v );         }         catch( e )         {            dump( "e is "+e+"\n" );            return;         }         if (calendarEvent) {             ArrayOfEvents.push(calendarEvent);         }      }   }      if( ArrayOfEvents.length == 1 )   {       currentView().goToDay(ArrayOfEvents[0].startDate);   }      // Pass in true, so we don't end up in a circular loop   currentView().setSelectedItems(ArrayOfEvents.length, ArrayOfEvents, true);}
5872	/local1/tlutelli/issta_data/temp/all_js/javascript/2007_temp/2007/5872/901a7e4d98be3449a59cefd81386a19f9a956457/unifinder.js/buggy/calendar/resources/content/unifinder.js