App\Http\Controllers\MenuController::index PHP Method

index() public method

index
public index ( MenuHandler $handler, Illuminate\Contracts\Config\Repository $config, SiteHandler $siteHandler ) : Xpressengine\Presenter\RendererInterface
$handler Xpressengine\Menu\MenuHandler menu handler
$config Illuminate\Contracts\Config\Repository laravel config
$siteHandler Xpressengine\Site\SiteHandler site handler
return Xpressengine\Presenter\RendererInterface
    public function index(MenuHandler $handler, IlluminateConfig $config, SiteHandler $siteHandler)
    {
        $siteKey = $siteHandler->getCurrentSiteKey();
        $menus = $handler->getAll($siteKey);
        $homeMenuId = $siteHandler->getHomeInstanceId();
        $menuMaxDepth = $config->get('xe.menu.maxDepth');
        $transKey = [];
        foreach ($menus as $menu) {
            foreach ($menu->items as $item) {
                $transKey[] = $item->title;
            }
        }
        // 메뉴 어드민 트리 뷰에서 필요한 고유 다국어
        XeFrontend::translation(['xe::addMenu', 'xe::addItem', 'xe::goLink', 'xe::setHome']);
        // 메뉴 타이틀 user 다국어
        XeFrontend::translation($transKey);
        return XePresenter::make('menu.index', ['siteKey' => $siteKey, 'menus' => $menus, 'home' => $homeMenuId, 'maxDepth' => $menuMaxDepth]);
    }