idfive / UniCal

Angular.js-based events calendar application, based on the headless/decoupled Drupal approach, and the COPE principle
http://unical.idfive.com
MIT License
8 stars 3 forks source link

Repeating Event Handling in UniCal Mini Calendar #2

Open boybe opened 7 years ago

boybe commented 7 years ago

We have discovered an issue with repeating event handling in the mini calendar of UniCal:

unical-mini-calendar

To describe what we have discovered, let’s assume we have an instance of UniCal installed and no events in the system with a start date after July 31, 2017.

Steps to reproduce

  1. Create an event whose start date is Tuesday, 8/01/17 and which repeats three times (i.e. last day is Friday 8/4/2017).
  2. Go to the mini calendar and increment to August 2017. Inspect the date-of-the-month numbers shown.

Expected (desired) result The mini calendar day blocks with numbers 1, 2, 3 and 4 should all be clickable, and when clicked, the event listing should show the repeated event instance for that date.

Actual result August 1st is clickable on the calendar, but the three other instances of the event are not.

Is this an as-designed behavior? We were wondering because if you filter-by-date using the Custom range widget that technique does work. In other words, using the same setup as my test above, if I input a custom range of August 3, 2017 and click the Update button , the event listing does show the August 3rd instance of the repeating event.

Thank you for the UniCal Module!

nickrigby commented 7 years ago

Hi @boybe.

Thank you for the info! This is actually a bug we're aware of, and are in the process of fixing, but unfortunately I don't have a timeline for that fix. The main issue is that repeating events are a single node in Drupal, and only get exposed to the date widget as a single event, which only takes the first date in the repeating series.

One temporary solution that we have looked at is using Drupal Date Repeat Entity module, which creates individual nodes for repeating events. We have seen some potential bugs with this module in some configurations (using Workbench, for instance), but it may work as a temporary solution for you.

Thank you again for the detail, and I'll be sure to update this ticket once a fix is in place.