diff --git a/app/Http/Controllers/HomeController.php b/app/Http/Controllers/HomeController.php index 8841fcb..27740ab 100755 --- a/app/Http/Controllers/HomeController.php +++ b/app/Http/Controllers/HomeController.php @@ -50,6 +50,25 @@ class HomeController extends Controller return view('view', ['deal' => $deal, 'type' => $type]); } + public function update(Request $request, $type, $id) + { + $folder_path = sprintf('%s/%s/%s', config('app.deals_dir'), $type, $id); + if (file_exists($folder_path)) { + $deal = new Deal(sprintf('%s/%s', config('app.deals_dir'), $type), $id); + } + if ($request->isMethod('post')) { + // TODO filter + $deal + ->setSubject($request->subject) + ->setBody($request->body) + ->setCategory($request->category) + ->setPrice($request->price); + $deal->save($folder_path); + return redirect()->route('deals.list', ['type' => $type])->with('status', ($result ? 'Deal mis à jour': 'ERREUR')); + } + return view('update', ['deal' => $deal, 'type' => $type]); + } + public function delete($type, $id) { $result = false; diff --git a/resources/views/update.blade.php b/resources/views/update.blade.php new file mode 100644 index 0000000..6220afc --- /dev/null +++ b/resources/views/update.blade.php @@ -0,0 +1,37 @@ +@extends('layouts.app') + +@section('content') +
+
+
+
+
Dashboard − Revenir à la liste
+ +
+ @if (session('status')) +
+ {{ session('status') }} +
+ @endif +
+ + + + + + + + + +
+
+ +
+
+
+
+@endsection diff --git a/routes/web.php b/routes/web.php index f0c821e..59d3485 100755 --- a/routes/web.php +++ b/routes/web.php @@ -22,3 +22,7 @@ Route::get('/deals/list/{type}', 'HomeController@list')->name('deals.list'); Route::get('/deals/view/{type}/{id}', 'HomeController@view')->name('deals.view'); Route::get('/deals/delete/{type}/{id}', 'HomeController@delete')->name('deals.delete'); + +Route::get('/deals/update/{type}/{id}', 'HomeController@update')->name('deals.update'); + +Route::post('/deals/update/{type}/{id}', 'HomeController@update')->name('deals.update.post');