File: D:/HostingSpaces/SBogers10/ehbo.today/app/KommaApp/Users/CoursesComposer.php
<?php
namespace App\KommaApp\Users;
use App\KommaApp\Courses\Kms\CourseService;
use App\KommaApp\Courses\Models\Course;
use App\KommaApp\Pages\Models\Page;
use App\KommaApp\Users\Models\Role;
use Illuminate\View\View;
class CoursesComposer
{
/**
* @var CourseService
*/
private $courseService;
/**
* Create a new profile composer.
*
* @param CourseService $courseService
*/
public function __construct(CourseService $courseService)
{
$this->courseService = $courseService;
}
/**
* Bind data to the view.
*
* @param View $view
* @return void
*/
public function compose(View $view)
{
/** @var Role $role */
$role = \Auth::user()->mostPrivilegedRole();
$showPresenceManager = ($role && in_array($role->value, [
Roles::SuperAdmin,
Roles::Admin,
Roles::BoardMember,
Roles::CommissionMember,
Roles::Trainer,
], true)) ? true : false;
setlocale(LC_TIME, 'nl_NL.utf8');
// $this->courseService->getCourseCompetencesIncludingUsersStatus();
$view->with([
'show_presence_manager_link' => $showPresenceManager,
'recommended_courses' => $this->courseService->recommendedCourses(\Auth::user()),
'all_courses' => $this->courseService->includeUserCompetenceStatuses(Course::all(), \Auth::user()),
'subscribed_courses' => $this->courseService->subscribedCourses(\Auth::user()),
'completed_courses' => $this->courseService->completedCourses(\Auth::user()),
'missing_competences' => $this->courseService->getMissingCompetences(\Auth::user())->all(),
'expired_competences' => $this->courseService->getExpiredCompetences(\Auth::user())->all(),
'almost_expired_competences' => $this->courseService->getAlmostExpiredCompetences(\Auth::user())->all(),
'valid_competences' => $this->courseService->getValidCompetences(\Auth::user())->all(),
]);
}
}