File: D:/HostingSpaces/SBogers10/ste.komma.pro/app/SteLanguages/SteLanguageController.php
<?php
namespace App\SteLanguages;
use App\Base\Controller;
use App\Components\ComponentService;
use App\SteLanguages\Models\SteLanguage;
final class SteLanguageController extends Controller
{
private $steLanguageService;
public function __construct(SteLanguageService $steLanguageService)
{
parent::__construct();
$this->steLanguageService = $steLanguageService;
}
/**
* @return \Illuminate\Contracts\View\View
*/
public function index()
{
$page = $this->links->languages->node;
$steLanguages = $this->steLanguageService->getSteLanguages();
$componentService = app(ComponentService::class);
$components = $componentService->getViewComponents($page->translation);
// Make language menu for given page
$languageMenu = $this->pageService->makeLanguageSwitchForPage($this->links->languages, $this->links->home);
// Return view
return view('templates.languages_index',[
'components' => $components,
'page' => $page,
'links' => $this->links,
'languageMenu' => $languageMenu,
'steLanguages' => $steLanguages,
]);
}
/**
* @param SteLanguage $steLanguage
* @return \Illuminate\Contracts\View\View
*/
public function show(SteLanguage $steLanguage)
{
$steLanguage->load('translation','translations', 'products', 'products.images', 'products.translation');
// Make language menu for given page
$page = $this->links->languages->node;
$languageMenu = $this->pageService->makeLanguageSwitchForPage($this->links->languages, $this->links->home);
$this->pageService->extendLanguageMenuWithResource($languageMenu, $steLanguage);
// Return view
return view('templates.languages_show',[
'page' => $page,
'steLanguage' => $steLanguage,
'links' => $this->links,
'languageMenu' => $languageMenu,
]);
}
}