From 11dda1fac34e4335c8282bc0d59476b0e89ccc92 Mon Sep 17 00:00:00 2001 From: eyalvo-matrix Date: Thu, 16 Mar 2017 15:02:28 +0200 Subject: [PATCH] fix for deleting recurrent event --- interface/main/calendar/add_edit_event.php | 19 +++++++++++++------ 1 file changed, 13 insertions(+), 6 deletions(-) diff --git a/interface/main/calendar/add_edit_event.php b/interface/main/calendar/add_edit_event.php index d27bfd3ab..7bb37dea5 100644 --- a/interface/main/calendar/add_edit_event.php +++ b/interface/main/calendar/add_edit_event.php @@ -725,7 +725,7 @@ if ($_POST['form_action'] == "save") { $origEvent = sqlQuery("SELECT pc_recurrspec FROM openemr_postcalendar_events ". " WHERE pc_aid <=> ? AND pc_multiple=?", array($provider,$row['pc_multiple']) ); $oldRecurrspec = unserialize($origEvent['pc_recurrspec']); - $selected_date = date("Ymd", strtotime($_POST['selected_date'])); + $selected_date = date("Y-m-d", strtotime($_POST['selected_date'])); if ($oldRecurrspec['exdate'] != "") { $oldRecurrspec['exdate'] .= ",".$selected_date; } else { $oldRecurrspec['exdate'] .= $selected_date; } @@ -737,12 +737,19 @@ if ($_POST['form_action'] == "save") { } else if ($_POST['recurr_affect'] == 'future') { // update all existing event records to stop recurring on this date-1 - $selected_date = date("Ymd", (strtotime($_POST['selected_date'])-24*60*60)); + $selected_date = date("Y-m-d", (strtotime($_POST['selected_date'])-24*60*60)); foreach ($providers_current as $provider) { - // update the provider's original event - sqlStatement("UPDATE openemr_postcalendar_events SET " . - " pc_enddate = ? ". - " WHERE ".$whereClause, array($selected_date) ); + // In case of a change in the middle of the event + if (strcmp($_POST['event_start_date'],$_POST['selected_date'])!=0) { + // update the provider's original event + sqlStatement("UPDATE openemr_postcalendar_events SET " . + " pc_enddate = ? " . + " WHERE " . $whereClause, array($selected_date)); + } + // In case of a change in the event head + else{ + sqlStatement("DELETE FROM openemr_postcalendar_events WHERE ".$whereClause); + } } } else { -- 2.11.4.GIT