'deleteCity' ]; protected $rules = [ 'name' => 'required' ]; public function resetFields(){ $this->name = ''; $this->enabled = true; } public function render() { $this->cities = City::select('id', 'name', 'enabled')->get(); return view('livewire.city'); } public function addCity() { $this->resetFields(); $this->addCity = true; $this->updateCity = false; } public function storeCity() { $this->validate(); try { City::create([ 'name' => $this->name, 'province_id' => $this->provinceId, 'enabled' => $this->enabled ]); session()->flash('success','Città creata'); $this->resetFields(); $this->addCity = false; } catch (\Exception $ex) { session()->flash('error','Errore in fase di salvataggio'); } } public function editCity($id){ try { $city = City::findOrFail($id); if( !$city) { session()->flash('error','Città non trovata'); } else { $this->name = $city->name; $this->enabled = $city->enabled; $this->provinceId = $city->provinceId; $this->cityId = $city->id; $this->updateCity = true; $this->addCity = false; } } catch (\Exception $ex) { session()->flash('error','Errore'); } } public function updateCity() { $this->validate(); try { City::whereId($this->cityId)->update([ 'name' => $this->name, 'province_id' => $this->provinceId, 'enabled' => $this->enabled ]); session()->flash('success','Città aggiornata'); $this->resetFields(); $this->updateCity = false; } catch (\Exception $ex) { session()->flash('success','Errore'); } } public function cancelCity() { $this->addCity = false; $this->updateCity = false; $this->resetFields(); } public function deleteCity($id) { try{ City::find($id)->delete(); session()->flash('success',"Città eliminata"); }catch(\Exception $e){ session()->flash('error',"Errore"); } } }