diff --git a/restapi/index.php b/restapi/index.php index 85abbbd5a..f28a86220 100644 --- a/restapi/index.php +++ b/restapi/index.php @@ -2201,6 +2201,25 @@ class RestapiController { /* {{{ */ return $response->withJson(array('success'=>true, 'message'=>'', 'data'=>$this->__getGroupData($newGroup)), 201); } /* }}} */ + function deleteGroup($request, $response, $args) { /* {{{ */ + $dms = $this->container->dms; + $userobj = $this->container->userobj; + + $check = $this->checkIfAdmin($request, $response); + if($check !== true) + return $check; + + if($group = $dms->getGroup($args['id'])) { + if($result = $group->remove($userobj)) { + return $response->withJson(array('success'=>$result, 'message'=>'', 'data'=>''), 200); + } else { + return $response->withJson(array('success'=>$result, 'message'=>'Could not delete group', 'data'=>''), 500); + } + } else { + return $response->withJson(array('success'=>false, 'message'=>'No such group', 'data'=>''), 404); + } + } /* }}} */ + function getGroup($request, $response, $args) { /* {{{ */ $dms = $this->container->dms; $userobj = $this->container->userobj; @@ -2869,6 +2888,7 @@ $app->put('/users/{id}/disable', \RestapiController::class.':setDisabledUser'); $app->put('/users/{id}/password', \RestapiController::class.':changeUserPassword'); $app->post('/groups', \RestapiController::class.':createGroup'); $app->get('/groups', \RestapiController::class.':getGroups'); +$app->delete('/groups/{id}', \RestapiController::class.':deleteGroup'); $app->get('/groups/{id}', \RestapiController::class.':getGroup'); $app->put('/groups/{id}/addUser', \RestapiController::class.':addUserToGroup'); $app->put('/groups/{id}/removeUser', \RestapiController::class.':removeUserFromGroup');