Recurring Events drag/drop or manually rescheduled

I really have to say that this Scheduler application is really slick and I applaud the effort put into all the class modules and functions. But while System Testing the event calendar with recurring events, I discovered a new problem.

If I have a recurring event scheduled today (say it’s a monthly event) and I have to re-schedule that single event from 1 day to several weeks out, it will display properly in the calendar and the “Oncoming Events” sidebar. However, once today’s date has passed for the regularly scheduled recurring event, the re-scheduled event still appears in the calendar but vanishes from the Oncoming Events sidebar. This is a problem.

I set debug breakpoints in SchedulerHelper.php and in the function get_dates. The first query in function get_dates finds the re-scheduled event when it’s the date of the recurring event (which I expected) but once that recurring event date passes, it’s a null query result. I added an ECHO command and converted the EVENT_LENGTH into a readable date and noticed that the re-scheduled EVENT_LENGTH value is the original recurring event date rather then the re-scheduled event date. This explains why the first query fails (the one that creates the $updates array) since it’s looking for a value in EVENT_LENGTH >= today’s date and ignores the re-scheduled event date since that date has now passed.

Any help in resolving this vanishing event problem would be appreciated!

Hello,

Thank you for your valuable feedback, we appreciate it :slight_smile:

You should replace in SchedulerHelper.php line

$query = "SELECT * FROM ".$this->table_name." WHERE (`rec_type`='none' OR `rec_type`='') AND (`event_length`>='".($this->date_start_ts)."' AND `event_length`<='".($this->date_end_ts)."') ";

with

$query = "SELECT * FROM ".$this->table_name." WHERE (`rec_type`='none' OR `rec_type`='')";

After this problem should be fixed.

Best regards,
Ilya

I modified the query as stated and the problem still exists. It looks like the function date_generator ignores these rows when evaluating the current event.

Hello,

Try replacing your schedulerHelper.php file with the attached one.

Best regards,
Ilya
SchedulerHelper.zip (9.78 KB)

Ok, I replaced the new version and have started testing different event date scenarios to ensure it picks up moved single events. I will post here if I see any anomolies but so far it looks good. Thanks!