From d91d16201fe35753a4553dabdfc794a9d2728cc3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Eduardo=20San=20Miguel=20Garc=C3=ADa?= Date: Thu, 8 Aug 2024 20:56:41 -0600 Subject: [PATCH] fix sleep value issue that added more occurrences than needed to the database. --- FieldtypeRecurringDates.module | 20 +++++++++++++------- 1 file changed, 13 insertions(+), 7 deletions(-) diff --git a/FieldtypeRecurringDates.module b/FieldtypeRecurringDates.module index 261bff5..582263c 100644 --- a/FieldtypeRecurringDates.module +++ b/FieldtypeRecurringDates.module @@ -271,15 +271,21 @@ class FieldtypeRecurringDates extends FieldtypeMulti { $sleepValue = array(); if ($value->rrule) { - $this->saveSettings($page, $field, $value); - foreach ($value->rrule as $date) { - $occurrence_date = new Occurrence(); - // TODO - // $occurrence_date->excluded = false; - $occurrence_date->date = $date; - $value->occurrences->add($occurrence_date); + + if ($value->occurrences->count() == 0) { + $this->saveSettings($page, $field, $value); + foreach ($value->rrule as $date) { + $occurrence_date = new Occurrence(); + // TODO + // $occurrence_date->excluded = false; + $occurrence_date->date = $date; + $value->occurrences->add($occurrence_date); + } } + + $this->saveSettings($page, $field, $value); } + if (!$value instanceof RecurringDate) return $sleepValue; foreach ($value->occurrences as $occurrence) {