diff --git a/src/view/phui/calendar/PHUICalendarDayView.php b/src/view/phui/calendar/PHUICalendarDayView.php --- a/src/view/phui/calendar/PHUICalendarDayView.php +++ b/src/view/phui/calendar/PHUICalendarDayView.php @@ -89,6 +89,7 @@ 'eventStartEpoch' => $event->getEpochStart(), 'eventEndEpoch' => $event->getEpochEnd(), 'eventName' => $event->getName(), + 'eventID' => $event->getEventID(), ); } } @@ -109,10 +110,11 @@ $first_event_hour = $hour; } - $js_hourly_events[$event->getEventID()] = array( + $js_hourly_events[] = array( 'eventStartEpoch' => $event->getEpochStart(), 'eventEndEpoch' => $event->getEpochEnd(), 'eventName' => $event->getName(), + 'eventID' => $event->getEventID(), 'hour' => $hour, 'offset' => '0', 'width' => '100%', diff --git a/webroot/rsrc/js/application/calendar/behavior-day-view.js b/webroot/rsrc/js/application/calendar/behavior-day-view.js --- a/webroot/rsrc/js/application/calendar/behavior-day-view.js +++ b/webroot/rsrc/js/application/calendar/behavior-day-view.js @@ -55,5 +55,31 @@ return clusters; } + function updateEventsFromCluster(cluster, hourly_events) { + var cluster_size = cluster.length; + var n = 0; + for(var i=0; i < cluster.length; i++) { + var cluster_member = cluster[i]; + + var event_id = cluster_member.eventID; + var offset = ((n / cluster_size) * 100) + '%'; + var width = ((1 / cluster_size) * 100) + '%'; + + for (var j=0; j < hourly_events.length; j++) { + if (hourly_events[j].eventID == event_id) { + + hourly_events[j]['offset'] = offset; + hourly_events[j]['width'] = width; + } + } + n++; + } + + return hourly_events; + } + var today_clusters = findTodayClusters(); + for(var i=0; i < today_clusters.length; i++) { + hourly_events = updateEventsFromCluster(today_clusters[i], hourly_events); + } });