<?php
namespace App\Http\Livewire\Partenaires;
use App\Partenaire;
use Livewire\Component;
use Illuminate\Support\Facades\Auth;
class Edit extends Component
{
public $partenaire_id, $user_id, $nom_societe, $secteur_activite, $pays_presence, $nom_point_focal,
$phone_point_focal, $email, $honoraires, $commission, $commentaires;
public $pays_couverts = [];
public function mount($id){
$parternaire = Partenaire::find($id);
$this->partenaire_id = $parternaire->id;
$this->user_id = $parternaire->user_id;
$this->nom_societe = $parternaire->nom_societe;
$this->secteur_activite = $parternaire->secteur_activite;
$this->pays_presence = $parternaire->pays_presence;
$this->pays_couverts = $parternaire->pays_couverts;
$this->nom_point_focal = $parternaire->nom_point_focal;
$this->phone_point_focal = $parternaire->phone_point_focal;
$this->email = $parternaire->email;
$this->honoraires = $parternaire->honoraires;
$this->commission = $parternaire->commission;
$this->commentaires = $parternaire->commentaires;
}
public function render()
{
return view('livewire.partenaires.edit');
}
public function update(){
$this->validate([
'nom_societe' => 'required',
'secteur_activite' => 'required',
'pays_presence' => 'required',
'nom_point_focal' => 'required',
'email' => 'required|email',
'honoraires' => 'required',
'commission' => 'required',
'commentaires' => 'required',
]);
$this->pays_couverts = implode(',', $this->pays_couverts);
$partenaire = Partenaire::find($this->partenaire_id);
$partenaire->update([
'user_id' => Auth::user()->id,
'nom_societe' => $this->nom_societe,
'secteur_activite' => $this->secteur_activite,
'pays_presence' => $this->pays_presence,
'pays_couverts' => $this->pays_couverts,
'nom_point_focal' => $this->nom_point_focal,
'phone_point_focal' => $this->phone_point_focal,
'email' => $this->email,
'honoraires' => $this->honoraires,
'commission' => $this->commission,
'commentaires' => $this->commentaires,
]);
session()->flash('message', 'Fiche partenaire modifiée avec succes.');
return redirect()->route('partenaires.index');
}
}