Skip to content

Commit 2661dc4

Browse files
committed
fix(traits) : make sure the aftersave method in HasFrequencies trait only works when input has a type field
1 parent 9a75ce5 commit 2661dc4

File tree

1 file changed

+13
-11
lines changed

1 file changed

+13
-11
lines changed

src/Traits/HasFrequencies.php

Lines changed: 13 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -45,20 +45,22 @@ public function afterSave()
4545
{
4646
$input = request()->all();
4747

48-
if (isset($input['type']) && $input['type'] == 'frequency') {
49-
foreach ($this->frequencies as $frequency) {
50-
if (! in_array($frequency->interval, collect($input['frequencies'])->pluck('interval')->toArray())) {
51-
$frequency->delete();
48+
if (isset($input['type'])) {
49+
if ($input['type'] == 'frequency') {
50+
foreach ($this->frequencies as $frequency) {
51+
if (! in_array($frequency->interval, collect($input['frequencies'])->pluck('interval')->toArray())) {
52+
$frequency->delete();
53+
}
5254
}
53-
}
5455

55-
foreach ($input['frequencies'] as $_frequency) {
56-
$this->frequencies()->updateOrCreate(array_only($_frequency, ['task_id', 'label', 'interval']));
56+
foreach ($input['frequencies'] as $_frequency) {
57+
$this->frequencies()->updateOrCreate(array_only($_frequency, ['task_id', 'label', 'interval']));
58+
}
59+
} else {
60+
$this->frequencies->each(function ($frequency) {
61+
$frequency->delete();
62+
});
5763
}
58-
} else {
59-
$this->frequencies->each(function ($frequency) {
60-
$frequency->delete();
61-
});
6264
}
6365
}
6466

0 commit comments

Comments
 (0)