diff --git a/app/Http/Controllers/WorkshopController.php b/app/Http/Controllers/WorkshopController.php index d55af91..c7f7502 100644 --- a/app/Http/Controllers/WorkshopController.php +++ b/app/Http/Controllers/WorkshopController.php @@ -237,4 +237,25 @@ class WorkshopController extends Controller return redirect()->route('admin.workshop.index'); } + + /** + * Duplicate the specified resource. + */ + public function admin_duplicate(Workshop $workshop) + { + $newWorkshop = $workshop->replicate(); + $newWorkshop->title = $newWorkshop->title . ' (copy)'; + $newWorkshop->status = 'draft'; + $newWorkshop->save(); + + foreach($workshop->files as $file) { + $newWorkshop->files()->attach($file->name); + } + + session()->flash('message', 'Workshop has been duplicated'); + session()->flash('message-title', 'Workshop duplicated'); + session()->flash('message-type', 'success'); + + return redirect()->route('admin.workshop.edit', $newWorkshop); + } } diff --git a/resources/views/admin/workshop/index.blade.php b/resources/views/admin/workshop/index.blade.php index 85e5568..23ce11f 100644 --- a/resources/views/admin/workshop/index.blade.php +++ b/resources/views/admin/workshop/index.blade.php @@ -38,8 +38,9 @@