Do you have a demo of this anywhere please?
What specific settings are you using? I just created one that recurs three times weekly and it works fine: https://xf2.nixfifty.com/events/Recurring events simply do not work. I have tried every way possible to create them and I either get an event that occurs every day of the week, or on the first date only. Going back through the thread, I see this has been an outstanding issue for a year or more. I'm disappointed to have paid for something that is not suitable for production use. What are the plans for resolving this?
Thanks, I can reproduce that. I believe there's an issue with the specific days setting but I'll check it out.Event starting today at 8:00pm until today at 9:00 pm
Recurring.
Tried both 1 weekly, 1 daily and 7 daily recurring schedules.
Happens only on the days Monday, Tuesday, Wednesday, Thursday and Friday.
Never ends
I will either end up with an event that happens every Monday, or every day of the week. I need an event that happens only on weekdays at the same time, and not weekends.
I have tried probably a couple dozen different ways to get a recurring event that happens more than 1 time per week, and it never works. Everything I try seems to point towards program logic which ignores the selected days.
2 widgets - featured events, and upcoming events1. Does this addon have any widgets to display upcoming events on the home page?
2. With the RSVP, is there a way a member can indicate more than one person will be attending? e.g. "I will be bring along two friends.."
I checked the code and it seems to be an API related issue. I have set up this event: https://gyazo.com/4c8745a02c3663130687821c5f7ea616 and I see that in API response it comes everyday: https://gyazo.com/5071099a2a58c9ae699ca1fd2d9acafc .It seems like an issue with FullCalendar, the library used to generate the calendar views, and how it handles recurring events. The add-on is using an ancient version and recurring events are handled better in the newer versions of FullCalendar it seems. An effort to update this is underway and should be in the next major release.
NF\Calendar\Repository\Event::recurEvent($event, $start, $end, &$events)
should contain this logic, but does not contain anything related to weekdays
. I see in the debug console the format of the $event['recurring_options']
and looks correct: https://gyazo.com/0bf7c8ee787fda9909cae38b8652b62c . So the functionality is actually missing from the code.// Starting from line 458 in src/addons/NF/Calendar/Repository/Event.php
// Before:
$event['start_date'] = $startDate->format('U');
$event['end_date'] = $endDate->format('U');
$events[] = $event;
// After:
if (count($recurringOptions['weekdays']) == 0 || in_array($startDate->format('N'), $recurringOptions['weekdays'])) {
$event['start_date'] = $startDate->format('U');
$event['end_date'] = $endDate->format('U');
$events[] = $event;
}
$startDate
and $endDate
but can be extended.Thanks, I'll check it out. There's probably still going to be further changes to recurring events as FullCalendar 5 supports recurrence rules which should provide a better experience overall.I checked the code and it seems to be an API related issue. I have set up this event: https://gyazo.com/4c8745a02c3663130687821c5f7ea616 and I see that in API response it comes everyday: https://gyazo.com/5071099a2a58c9ae699ca1fd2d9acafc .
So I went further and looked inside the code and the methodNF\Calendar\Repository\Event::recurEvent($event, $start, $end, &$events)
should contain this logic, but does not contain anything related toweekdays
. I see in the debug console the format of the$event['recurring_options']
and looks correct: https://gyazo.com/0bf7c8ee787fda9909cae38b8652b62c . So the functionality is actually missing from the code.
I added the following condition and seems to fix this:
PHP:// Starting from line 458 in src/addons/NF/Calendar/Repository/Event.php // Before: $event['start_date'] = $startDate->format('U'); $event['end_date'] = $endDate->format('U'); $events[] = $event; // After: if (count($recurringOptions['weekdays']) == 0 || in_array($startDate->format('N'), $recurringOptions['weekdays'])) { $event['start_date'] = $startDate->format('U'); $event['end_date'] = $endDate->format('U'); $events[] = $event; }
I have reported this bug over a month ago so I could not wait anymore for the fix and started looking into the code. This fix does not apply for events that have different dates on$startDate
and$endDate
but can be extended.
Just to follow up here since I've taken a proper look. While you're correct and it does indeed work, it's not a complete solution. I've adjusted this in the update that just went out but essentially, if an event is to recur on specific set days, it needed additional changes to work as expected and it also needs to be set to recur weekly, with the specific days picked. I've also made some other small improvements to recurring events in general.I checked the code and it seems to be an API related issue. I have set up this event: https://gyazo.com/4c8745a02c3663130687821c5f7ea616 and I see that in API response it comes everyday: https://gyazo.com/5071099a2a58c9ae699ca1fd2d9acafc .
So I went further and looked inside the code and the methodNF\Calendar\Repository\Event::recurEvent($event, $start, $end, &$events)
should contain this logic, but does not contain anything related toweekdays
. I see in the debug console the format of the$event['recurring_options']
and looks correct: https://gyazo.com/0bf7c8ee787fda9909cae38b8652b62c . So the functionality is actually missing from the code.
I added the following condition and seems to fix this:
PHP:// Starting from line 458 in src/addons/NF/Calendar/Repository/Event.php // Before: $event['start_date'] = $startDate->format('U'); $event['end_date'] = $endDate->format('U'); $events[] = $event; // After: if (count($recurringOptions['weekdays']) == 0 || in_array($startDate->format('N'), $recurringOptions['weekdays'])) { $event['start_date'] = $startDate->format('U'); $event['end_date'] = $endDate->format('U'); $events[] = $event; }
I have reported this bug over a month ago so I could not wait anymore for the fix and started looking into the code. This fix does not apply for events that have different dates on$startDate
and$endDate
but can be extended.
- Fix an issue with events set to recur weekly on set days, not recurring weekly on set days.
- Other assorted quality of life improvements to recurring events.
- Fix a PHP 8 template error when viewing the calendar index list.
You can specify number of attendees by limiting the number of RSVPs. Not sure what you mean by notes though.Tried the demo. It looks good but I can't specify how many attendees and also I can't insert notes that for me is two must have features.
Thanks @NixFifty , will check it out. I am glad you could include it in a release this fastJust to follow up here since I've taken a proper look. While you're correct and it does indeed work, it's not a complete solution. I've adjusted this in the update that just went out but essentially, if an event is to recur on specific set days, it needed additional changes to work as expected and it also needs to be set to recur weekly, with the specific days picked. I've also made some other small improvements to recurring events in general.
We use essential cookies to make this site work, and optional cookies to enhance your experience.