HEX
Server: Microsoft-IIS/8.5
System: Windows NT YDAWBH120 6.3 build 9600 (Windows Server 2012 R2 Standard Edition) AMD64
User: tentjecom_web (0)
PHP: 7.4.14
Disabled: NONE
Upload Files
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(),
        ]);
    }
}