getModuleObject
public getModuleObject ( string $moduleId ) : mixed | ||
$moduleId | string | module id to get module object |
Résultat | mixed |
/** * Get setting page url by menu item * * @param MenuItem $item menu item instance * @return string|null */ public function getInstanceSettingURI(MenuItem $item) { $menuType = $this->modules->getModuleObject($item->type); return $menuType::getInstanceSettingURI($item->getKey()); }
/** * editItemPermission * 선택된 메뉴의 아이템을 permission 을 수정하는 페이지 구성 * * @param MenuHandler $handler menu handler * @param ModuleHandler $modules module handler * @param string $menuId menu id * @param string $itemId item id * * @return RendererInterface */ public function editItemPermission(MenuHandler $handler, ModuleHandler $modules, $menuId, $itemId) { $item = $handler->getItem($itemId); $menu = $item->menu; if ($menu->getKey() !== $menuId) { throw new InvalidArgumentHttpException(400); } try { $menuType = $modules->getModuleObject($item->type); } catch (NotFoundModuleException $e) { $menuType = null; } $permArgs = $this->getPermArguments($handler->permKeyString($item), [MenuHandler::ACCESS, MenuHandler::VISIBLE]); return XePresenter::make('menu.itemPermission', array_merge(['menu' => $menu, 'item' => $item, 'menuType' => $menuType], $permArgs)); }
/** * testGetModuleObjectThrowException * * @return void */ public function testGetModuleObjectThrowException() { $this->setExpectedException('\\XpressEngine\\Menu\\Exceptions\\NotFoundModuleException'); $register = $this->register; $register->shouldReceive('get')->andReturn(null); $moduleHandler = new ModuleHandler($register); $moduleHandler->getModuleObject('module/xpressengine@test'); }