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/komma.pro/app/KommaApp/Vacancies/VacancyController.php
<?php

namespace App\KommaApp\Vacancies;

use App\Http\Controllers\Controller;
use App\KommaApp\Blocks\BlockService;
use App\KommaApp\Categories\Models\Category;
use App\KommaApp\Vacancies\Models\Vacancy;

class VacancyController extends Controller
{
    /**
     * @var VacancyService
     */
    private $vacancyService;
    /**
     * @var BlockService
     */
    private $blockService;

    /**
     * VacancyController constructor.
     * @param VacancyService $vacancyService
     * @param BlockService $blockService
     */
    public function __construct(VacancyService $vacancyService, BlockService $blockService)
    {
        parent::__construct();
        $this->vacancyService = $vacancyService;
        $this->blockService = $blockService;
        $this->blockService->setSubFolder('vacancies');
    }

    public function index()
    {

        // Get page information
        $page = $this->pageService->getPageByCodeName('jobs');

        // Decode dynamic blocks
        $page->blocks = $this->blockService->decode($page->translation->description);

        return view('site.pages.vacancies.index',[
            'page' => $page,
            'namespace' => 'jobs',
        ]);
    }

    /**
     * @param Vacancy $vacancy
     * @return \Illuminate\Contracts\View\View
     */
    public function show(Vacancy $vacancy)
    {
        if(!$vacancy->active) return abort(404);

        // Get page information
        $page = $this->pageService->getPageByCodeName('jobs');

        // Decode dynamic blocks
        $page->blocks = $this->blockService->decode($page->translation->description);

        // Load translations and sites
        $vacancy->load('translation', 'images');

        // Decode dynamic blocks
        $this->blockService->setSubFolder('vacancies.show');
        $vacancy->blocks = $this->blockService->decode($vacancy->translation->description);

        // Return view
        return \View::make('site.pages.vacancies.show',[
            'page' => $page,
            'vacancy' => $vacancy,
            'namespace' => 'job',
        ]);
    }
}