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/zuiderbos.komma.pro/app/Komma/Jobs/JobController.php
<?php

/**
 * Short description for the file.
 *
 * @author      Komma <support@komma.pro>
 * @copyright   (c) 2012-2015, Komma Mediadesign
 */

namespace Komma\Jobs;

use Komma\Blocks\BlockService;
use Komma\Interns\InternService;
use Komma\Jobs\Models\Job;
use Komma\Kms\Schools\School;
use Komma\LanguageService;
use Komma\Pages\PageService;

class JobController extends \BaseController
{
    public $data;

    protected $pageService;

    protected $jobService;

    protected $internService;

    public $languageService;

    protected $blockService;

    public function __construct(PageService $pageService, LanguageService $languageService, JobService $jobService, InternService $internService, BlockService $blockService)
    {
        parent::__construct();
        $this->blockService = $blockService;
        $this->pageService = $pageService;
        $this->jobService = $jobService;
        $this->internService = $internService;
        $this->languageService = $languageService;
    }

    //Overview page
    public function index($page = null)
    {
        if ($page == null) {
            //Check if language matches the url before loading the content
            $this->languageService->checkRouteWithSetLanguage();

            //get content of page by route because of the multiple news overviews all page links
            $page = $this->pageService->getPageByRoute(\Request::path());

            // Get root parent and append code_name to page
            // So we can find out to which branch/school the page belongs
            if ($page->getDepth() != 1) {
                $page->root = $this->pageService->getRootParent($page);
            } else {
                // The page itself is the root branch, so to prevent writing if/else statements append it as branch
                $page->root = $page;
            }

            // Load school to page
            $page->school = School::where('type', $page->root->code_name)->first();
        }

        $links = $this->pageService->getAllRoutes();
        $jobs = $this->jobService->getAllJobs();
        $interns = $this->internService->getAllInterns();

        return \View::make('layouts.pages.jobs.index')
            ->with('jobs', $jobs)
            ->with('interns', $interns)
            ->with('page', $page)
            ->with('links', $links);
    }

    public function show($jobId)
    {
        $page = $this->pageService->getPageByCodeName('jobs');
        $page->root = $page;

        // 'Werken Bij' school has id 8
        $page->school = School::where('id', 8)->first();

        // Get job or fail
        if (! $job = $this->jobService->getJob($jobId)->first()) {
            return $this->abortPage();
        }

        $links = $this->pageService->getAllRoutes();

        if (isset($job->page_code_name) && $job->page_code_name !== '') {
            $jobBlocksContent = $this->blockService->getContent($job->page_code_name);
            if (isset($jobBlocksContent)) {
                $jobBlocksContent = $this->blockService->getContent($job->page_code_name)->translation->description;
            }
        } else {
            $jobBlocksContent = null;
        }

        return \View::make('layouts.pages.jobs.show')
            ->with('job', $job)
            ->with('page', $page)
            ->with('links', $links)
            ->with('jobBlocksContent', $jobBlocksContent);
    }
}