ldc-crm/app/Http/Controllers/ServiceController.php
Jérémy Munsch 6987501a98 CRM API V2
2021-03-27 08:29:31 +01:00

47 lines
1.4 KiB
PHP

<?php
namespace App\Http\Controllers;
use App\Http\Requests\ManageServiceRequest;
use App\Models\Brand;
use App\Models\Service;
class ServiceController extends Controller
{
public function index()
{
$services = Service::all();
return view('services.index', compact('services'));
}
public function manage(ManageServiceRequest $request, Service $service = null)
{
$brands = Brand::all();
$edit = $service ? true : false;
if ($request->isMethod('post')) {
if (!$service) {
$service = new Service($request->validated());
} else {
$service->fill($request->validated());
}
$brand = Brand::findOrFail($request->brand_id);
$service->brand()->associate($brand);
$service->save();
return redirect()->route('services')->with('success', $edit ? 'Modifications enregistrées !' : sprintf(
'Token du service : %s',
$service->bearer_token
));
}
return view('services.manage', compact('service', 'brands', 'edit'));
}
public function generateApiToken(Service $service)
{
$service->generateBearerToken();
$service->save();
return back()->with('success', "Nouveau token d'API de " . $service->name . " : " . $service->bearer_token);
}
}