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

updateItemPermission() public method

updateItemPermission
public updateItemPermission ( Request $request, MenuHandler $handler, string $menuId, string $itemId ) : Illuminate\Http\RedirectResponse
$request Xpressengine\Http\Request request
$handler Xpressengine\Menu\MenuHandler menu handler
$menuId string menu id
$itemId string menu item id
return Illuminate\Http\RedirectResponse
    public function updateItemPermission(Request $request, MenuHandler $handler, $menuId, $itemId)
    {
        XeDB::beginTransaction();
        try {
            $item = $handler->getItem($itemId);
            $menu = $item->menu;
            if ($menu->getKey() !== $menuId) {
                throw new InvalidArgumentHttpException(400);
            }
            $this->permissionRegister($request, $handler->permKeyString($item), [MenuHandler::ACCESS, MenuHandler::VISIBLE]);
        } catch (Exception $e) {
            XeDB::rollback();
            Input::flash();
            return Redirect::back()->with('alert', ['type' => 'danger', 'message' => $e->getMessage()]);
        }
        XeDB::commit();
        return Redirect::back()->with('alert', ['type' => 'success', 'message' => 'success']);
    }