32 lines
757 B
PHP
32 lines
757 B
PHP
<?php
|
|
namespace App\Filament\User\Resources\RecipeResource\Pages;
|
|
|
|
use App\Filament\User\Resources\RecipeResource;
|
|
use Filament\Resources\Pages\EditRecord;
|
|
|
|
class EditRecipe extends EditRecord
|
|
{
|
|
protected static string $resource = RecipeResource::class;
|
|
|
|
protected function afterSave(): void
|
|
{
|
|
$this->syncSpices();
|
|
}
|
|
|
|
protected function syncSpices(): void
|
|
{
|
|
$recipe = $this->record;
|
|
|
|
$spices = collect($this->data['spices'] ?? [])
|
|
->mapWithKeys(function ($spice) {
|
|
return [
|
|
$spice['spice_id'] => ['amount_in_percent' => $spice['amount_in_percent']],
|
|
];
|
|
})
|
|
->toArray();
|
|
|
|
$recipe->spices()->sync($spices);
|
|
}
|
|
}
|
|
|