diff --git a/app/Http/Livewire/Meetup/Form/MeetupEventForm.php b/app/Http/Livewire/Meetup/Form/MeetupEventForm.php
index 6f4c300a..bcc9baea 100644
--- a/app/Http/Livewire/Meetup/Form/MeetupEventForm.php
+++ b/app/Http/Livewire/Meetup/Form/MeetupEventForm.php
@@ -17,7 +17,7 @@ class MeetupEventForm extends Component
public bool $recurring = false;
- public int $repetitions = 52;
+ public int $repetitions = 12;
public array $series = [];
@@ -34,6 +34,7 @@ class MeetupEventForm extends Component
'meetupEvent.description' => 'string|nullable',
'meetupEvent.link' => 'url|nullable',
+ 'series' => 'array',
'series.*.start' => 'required',
'recurring' => 'bool',
@@ -63,7 +64,7 @@ class MeetupEventForm extends Component
public function updatedMeetupEventStart($value)
{
- $this->validate();
+ $this->validateOnly('meetupEvent.start');
if ($this->recurring) {
$this->updatedRecurring(true);
}
@@ -71,23 +72,24 @@ class MeetupEventForm extends Component
public function updatedRecurring($value)
{
- $this->validate();
+ $this->validateOnly('recurring');
+ $series = [];
if ($value && $this->meetupEvent->start) {
- $this->series = [];
for ($i = 0; $i < $this->repetitions; $i++) {
- $this->series[] = [
- 'start' => $this->meetupEvent->start->addWeeks($i + 1)
+ $series[] = [
+ 'start' => $this->meetupEvent->start->addMonths($i + 1)
->toDateTimeString(),
];
}
}
+ $this->series = $series;
}
public function updatedRepetitions($value)
{
- $this->validate();
+ $this->validateOnly('repetitions');
if ($this->recurring) {
- $this->updatedRecurring(true);
+ $this->updatedRecurring(true, $value);
}
}
diff --git a/resources/views/livewire/meetup/form/meetup-event-form.blade.php b/resources/views/livewire/meetup/form/meetup-event-form.blade.php
index e982ab7a..a163b1ad 100644
--- a/resources/views/livewire/meetup/form/meetup-event-form.blade.php
+++ b/resources/views/livewire/meetup/form/meetup-event-form.blade.php
@@ -60,9 +60,9 @@
:placeholder="__('Start')"/>
- @if(!$meetupEvent->id)
-
-
+ @if(!$meetupEvent->id && $meetupEvent->start)
+
+
{{ __('The recurring appointments are created in the database as new entries. Please be careful with this function, otherwise you will have to change or delete all the appointments you have created manually if you make an error.') }}