UnknownSec Bypass
403
:
/
mnt
/
lmsestudio-instance-vol002
/
lms_3aa9cff400ff
/
app
/
Services
/
Environment
/ [
drwxr-xr-x
]
Menu
Upload
Mass depes
Mass delete
Terminal
Info server
About
name :
CourseResourceService.php
<?php namespace EstudioLMS\Services\Environment; use Carbon\Carbon; use Embed; use EstudioLMS\Helpers\GetDataRecords; use EstudioLMS\Repositories\Courses\Course\CourseResourceRepository; use EstudioLMS\Repositories\Courses\Resources\ResourceTypeInterface; use EstudioLMS\Repositories\Environment\RecordRepository; use EstudioLMS\Helpers\Helpers as MyHelper; use Storage; /** * Class CourseResourceService * @package EstudioLMS\Services\Environment */ class CourseResourceService { /** * @var RecordRepository */ private $recordRepository; /** * @var CourseResourceRepository */ private $courseResourceRepository; /** * @var ResourceTypeInterface */ private $resourceTypeRepository; /** * @var GetDataRecords */ private $getDataRecords; /** * CourseResourceService constructor. * @param CourseResourceRepository $courseResourceRepository * @param ResourceTypeInterface $resourceTypeRepository * @param RecordRepository $recordRepository * @param GetDataRecords $getDataRecords */ public function __construct( CourseResourceRepository $courseResourceRepository, ResourceTypeInterface $resourceTypeRepository, RecordRepository $recordRepository, GetDataRecords $getDataRecords ) { $this->courseResourceRepository = $courseResourceRepository; $this->resourceTypeRepository = $resourceTypeRepository; $this->recordRepository = $recordRepository; $this->getDataRecords = $getDataRecords; } /** * @param $userId * @param $resourceTypeSlug * @param $courseSlug * @param $moduleSlug * @param $resourceSlug * @return null */ public function renderLesson($userId, $resourceTypeSlug, $courseSlug, $moduleSlug, $resourceSlug) { $resourceType = $this->resourceTypeRepository->findByField('slug', $resourceTypeSlug)->first(); $course = $this->getDataRecords->getCourseBySlug($courseSlug); $module = $this->getDataRecords->getModuleBySlug($moduleSlug, $course['id']); $lesson = $this->getDataRecords->getResourceByResourceSlug($resourceType['id'], $resourceSlug); if($resourceType['id'] == 14) { $lesson['answered'] = $this->getDataRecords->checkIfUtfHasAnswered($userId, $lesson['id']); $lesson['replys'] = $this->getDataRecords->countUtfReplyAndRejoinder($lesson['comment']); $lesson['closed'] = false; if(!is_null($lesson['deadline'])) { $lesson['closed'] = Carbon::parse($lesson->getOriginal('deadline'))->toDateString() < Carbon::now()->toDateString(); } } $lesson['course_name'] = $course['name']; $lesson['course_id'] = $course['id']; $lesson['course_slug'] = $course['slug']; $lesson['module_id'] = $module['id']; $lesson['ajax_watch_record'] = $resourceType['ajax_watch_record']; $lesson['timed_ajax_watch_record'] = $resourceType['timed_ajax_watch_record']; if (isset($lesson['url'])) { $embed = Embed::make($lesson['url'])->parseUrl(); if ($embed) { $embed->setAttribute(['width' => 1000]); $embed->setAttribute(['height' => 563]); $embed->setAttribute(['allow' => 'autoplay']); $embed->setAttribute(['autoplay' => 1]); $lesson['embed'] = $embed->getHtml(); } } if (!isset($lesson['duration'])) { $lesson['duration'] = false; } if(isset($lesson['main_file'])) { $lesson['embed'] = url('storage/resources/18/'. $lesson['id'] . '/' . $lesson['main_file']); } $lesson['type'] = $resourceType['slug']; $lesson['previousResource'] = $this->getDataRecords->previousResource($course, $module, $lesson); $lesson['nextResource'] = $this->getDataRecords->nextResource($userId, $course, $module, $lesson); return $lesson; } /** * @param $courseSlug * @param $moduleSlug * @param $resourceId * @param $resourceTypeId * @return false|mixed */ public function renderFreeLesson($courseSlug, $moduleSlug, $resourceId, $resourceTypeId) { $resourceType = $this->resourceTypeRepository->find($resourceTypeId); $course = $this->getDataRecords->getCourseBySlug($courseSlug); $module = $this->getDataRecords->getModuleBySlug($moduleSlug, $course['id']); $lesson = $this->getDataRecords->getResourceByResourceId($resourceTypeId, $resourceId); $lesson['course_name'] = $course['name']; $lesson['course_id'] = $course['id']; $lesson['course_slug'] = $course['slug']; $lesson['module_id'] = $module['id']; $lesson['ajax_watch_record'] = $resourceType['ajax_watch_record']; $lesson['timed_ajax_watch_record'] = $resourceType['timed_ajax_watch_record']; if (isset($lesson['url'])) { $embed = Embed::make($lesson['url'])->parseUrl(); if ($embed) { $embed->setAttribute(['width' => 500]); $embed->setAttribute(['height' => 280]); //$embed->setAttribute(['allow' => 'autoplay']); $embed->setAttribute(['autoplay' => 0]); $embed->setAttribute(['class' => 'embed-responsive-item']); $lesson['embed'] = $embed->getHtml(); } } if (!isset($lesson['duration'])) { $lesson['duration'] = false; } $lesson['type'] = $resourceType['slug']; $lesson['title'] = $course['name']; if(!empty($lesson['uploaded_video'])) { //$lesson['uploaded_video_path'] = public_path() . '/storage/resources/' . $resourceTypeId . '/' . $resourceId . '/' . $lesson['uploaded_video']; $lesson['uploaded_video_url'] = route("video.url", [\EstudioLMS\Helpers\Helpers::newGuid(), $resourceTypeId, $resourceId]); } return $lesson; } /** * @param $resourceTypeId * @param $resourceId * @return mixed */ public function localVideoURL($resourceTypeId, $resourceId) { $resource = $this->getDataRecords->getResourceByResourceId($resourceTypeId, $resourceId); return $resource; } }
Copyright © 2026 - UnknownSec