authorize('viewAny', Program::class); return View::make('programs.index', ['programs' => Program::all()]); } public function store(ProgramRequest $request) { $this->authorize('create', Program::class); return Program::create($request->validated()); } public function show(Program $program) { $this->authorize('view', $program); return $program; } public function update(ProgramRequest $request, Program $program) { $this->authorize('update', $program); $program->update($request->validated()); return $program; } public function destroy(Program $program) { $this->authorize('delete', $program); $program->delete(); return response()->json(); } }