UnknownSec Bypass
403
:
/
var
/
www
/
html
/
lms_8dd1263a22e4
/
app
/
Http
/
Controllers
/
Admin
/
Course
/ [
drwxr-xr-x
]
Menu
Upload
Mass depes
Mass delete
Terminal
Info server
About
name :
CourseController.php
<?php namespace EstudioLMS\Http\Controllers\Admin\Course; use EstudioLMS\Base\ResponseBuilder; use EstudioLMS\Http\Controllers\Controller; use EstudioLMS\Http\Requests\Courses\CourseRequest; use EstudioLMS\Repositories\Auth\UserRepository; use EstudioLMS\Repositories\Config\GatewayRepository; use EstudioLMS\Repositories\Courses\Course\CourseRepository; use EstudioLMS\Repositories\Financial\PlanRepository; use EstudioLMS\Services\Admin\CourseServices; use EstudioLMS\Services\Environment\CourseService; use Illuminate\Contracts\Auth\Guard; use Illuminate\Http\Request; /** * Class CourseController * @package EstudioLMS\Http\Controllers\Admin\Course */ class CourseController extends Controller { /** * @var Guard */ private $auth; /** * @var ResponseBuilder */ private $responseBuilder; /** * @var UserRepository */ private $userRepo; /** * @var CourseRepository */ private $course; /** * @var PlanRepository */ private $plan; /** * @var CourseServices */ private $courseServices; /** * @var GatewayRepository */ private $gatewayRepository; /** * @var CourseService */ private $courseService; /** * @param ResponseBuilder $responseBuilder * @param Guard $auth * @param UserRepository $userRepo * @param CourseRepository $course * @param PlanRepository $plan * @param CourseServices $courseServices * @param GatewayRepository $gatewayRepository * @param CourseService $courseService */ public function __construct( responseBuilder $responseBuilder, Guard $auth, UserRepository $userRepo, CourseRepository $course, PlanRepository $plan, CourseServices $courseServices, GatewayRepository $gatewayRepository, CourseService $courseService ) { $this->middleware('admins'); $this->auth = $auth; $this->responseBuilder = $responseBuilder; $this->userRepo = $userRepo; $this->course = $course; $this->plan = $plan; $this->courseServices = $courseServices; $this->gatewayRepository = $gatewayRepository; $this->courseService = $courseService; } /** * @return mixed */ public function index() { $title = 'Gerenciar Cursos'; return $this->responseBuilder->render( 'admin.courses.course.list_courses', [], compact('title') ); } /** * @return mixed */ public function apiIndex() { return $this->course->with( ['user', 'category', 'category.language', 'countResources', 'countModules'] )->all(); } /** * @return mixed */ public function create() { $title = 'Adicionar Novo Curso'; return $this->responseBuilder->render( 'admin.courses.course.create', [], compact('title', 'statuses') ); } /** * @param CourseRequest $request * @return \Illuminate\Http\RedirectResponse */ public function store(CourseRequest $request) { $this->courseServices->storeCourse($request); return redirect()->route('admin.courses.course.index'); } /** * @param $id * @return mixed */ public function edit($id) { $course = $this->course->with(['plans', 'material'])->find($id); $plans = $this->plan->with('duration')->all(); $gateways = $this->gatewayRepository->all(); $title = 'Editar Curso'; foreach ($plans as $key => $plan) { $value = $course->plans->where('id', $plan->id)->first(); if (count($value) > 0) { $plans[$key]['value'] = $value->pivot->price; $plans[$key]['checked'] = true; $plans[$key]['default'] = $value->pivot->default; $plans[$key]['registration'] = $value->pivot->registration; } } foreach ($gateways as $key => $gateway) { $value = $course->gateways->find($gateway->id); if (count($value) > 0) { $gateways[$key]['installments'] = $value->pivot->installments; $gateways[$key]['checked'] = true; } } return $this->responseBuilder->render( 'admin.courses.course.edit', compact('course'), compact('plans', 'title', 'gateways') ); } /** * @param CourseRequest $request * @return \Illuminate\Http\RedirectResponse */ public function update(CourseRequest $request) { $this->courseServices->updateCourse($request); return redirect()->route('admin.courses.course.index'); } /** * @param Request $request * @return array */ public function updateStatus(Request $request) { $data = $request->all(); $published = $data['published'] == 0 ? 1 : 0; $course = $this->course->find($data['id']); $course['published'] = $published; $course->save(); $success = 'Sucesso!'; $message = 'Status alterado com sucesso! '; $ret = ['success' => $success, 'message' => $message, 'published' => $published]; return $ret; } /** * Remove the specified resource from storage. * * @param Request $request * @return \Illuminate\Http\Response */ public function destroy(Request $request) { $data = $request->all(); $this->course->find($data['id']); $this->course->delete($data['id']); $ret = ['success' => 'Exclusão: ', 'message' => 'Curso excluído com Sucesso!']; return $ret; } }
Copyright © 2026 - UnknownSec