File: D:/HostingSpaces/SBogers95/rentman.io/app/Komma/CareersJobs/CareersJobController.php
<?php
namespace App\Komma\CareersJobs;
use App\Http\Controllers\Controller;
use App\Komma\CareersJobs\Models\CareersJob;
use App\Komma\Components\ComponentService;
use App\Komma\Pages\Models\Page;
use App\Komma\Pages\PageController;
class CareersJobController extends Controller
{
public function index()
{
/** @var PageController $pageController */
$pageController = app()->make(PageController::class);
return $pageController->show(Page::where('code_name', 'jobs')->first());
}
/**
* @param CareersJob $careersJob
* @return \Illuminate\Contracts\View\View
*/
public function show(CareersJob $careersJob)
{
// Get the page through the set links
$page = $this->links->jobs->node;
$componentService = \App::make(ComponentService::class);
$components = $componentService->getViewComponents($careersJob);
// $otherJobs = $this->jobService->getNextJobs($job);
// Make language menu for found index page
$languageMenu = $this->pageService->makeLanguageSwitchForPage($this->links->jobs);
// $this->pageService->extendLanguageMenuWithResource($languageMenu, $job, $this->links->home);
/** @var CareersApi $careersApi */
$careersApi = app()->make(CareersApi::class);
$careersJob->api = $careersApi->getJob($careersJob->careers_id);
if (! $careersJob->active) {
abort(404);
}
if (! isset($careersJob->api)) {
abort(422, 'Career not found in API');
}
// Return view
return \View::make('site.templates.careersJobs_show', [
'page' => $page,
'careersJob' => $careersJob,
'components' => $components,
'links' => $this->links,
'languageMenu' => $languageMenu,
]);
}
}