From 2f228fea0fe0506200681e98a0b2d28ec29339e0 Mon Sep 17 00:00:00 2001 From: Neil Blakey-Milner Date: Sun, 31 Jul 2005 08:42:35 +0000 Subject: [PATCH] Permissions manager - view permissions, add and delete custom permissions. --- presentation/lookAndFeel/knowledgeTree/administration/permissions/managePermissions.php | 71 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 71 insertions(+), 0 deletions(-) create mode 100644 presentation/lookAndFeel/knowledgeTree/administration/permissions/managePermissions.php diff --git a/presentation/lookAndFeel/knowledgeTree/administration/permissions/managePermissions.php b/presentation/lookAndFeel/knowledgeTree/administration/permissions/managePermissions.php new file mode 100644 index 0000000..32e96e6 --- /dev/null +++ b/presentation/lookAndFeel/knowledgeTree/administration/permissions/managePermissions.php @@ -0,0 +1,71 @@ +loadTemplate("ktcore/manage_permissions"); + $aTemplateData = array( + "permissions" => $aPermissions, + ); + return $oTemplate->render($aTemplateData); + } + + function handleOutput($data) { + global $main; + $main->bFormDisabled = true; + $main->setCentralPayload($data); + $main->render(); + } + + function do_newPermission() { + $name = KTUtil::arrayGet($_REQUEST, 'name'); + $human_name = KTUtil::arrayGet($_REQUEST, 'human_name'); + if (empty($name) || empty($human_name)) { + return $this->errorRedirectToMain("Both names not given"); + } + $oPerm = KTPermission::createFromArray(array( + 'name' => $name, + 'humanname' => $human_name, + )); + if (PEAR::isError($oPerm)) { + return $this->errorRedirectToMain("Error creating permission"); + } + return $this->errorRedirectToMain("Permission created"); + } + + function do_deletePermission() { + $id = KTUtil::arrayGet($_REQUEST, 'id'); + if (empty($id)) { + return $this->errorRedirectToMain("Both names not given"); + } + $oPerm = KTPermission::get($id); + if (PEAR::isError($oPerm)) { + return $this->errorRedirectToMain("Error finding permission"); + } + if ($oPerm->getBuiltIn() === true) { + return $this->errorRedirectToMain("Can't delete built-in permission"); + } + $res = $oPerm->delete(); + if (PEAR::isError($res)) { + return $this->errorRedirectToMain("Error deleting permission"); + } + return $this->errorRedirectToMain("Permission deleted"); + } +} + +$oDispatcher = new ManagePermissionsDispatcher(); +$oDispatcher->dispatch(); + +?> -- libgit2 0.21.4