Fix API keys cannot be deleted (fixes #99)

This commit is contained in:
Bernd Bestel
2018-10-26 20:12:48 +02:00
parent b84e6da0dd
commit cd7b6b686d
2 changed files with 15 additions and 3 deletions

View File

@@ -6,7 +6,7 @@ class GenericEntityApiController extends BaseApiController
{
public function GetObjects(\Slim\Http\Request $request, \Slim\Http\Response $response, array $args)
{
if ($this->IsValidEntity($args['entity']))
if ($this->IsValidEntity($args['entity']) && !$this->IsEntityWithPreventedListing($args['entity']))
{
return $this->ApiResponse($this->Database->{$args['entity']}());
}
@@ -18,7 +18,7 @@ class GenericEntityApiController extends BaseApiController
public function GetObject(\Slim\Http\Request $request, \Slim\Http\Response $response, array $args)
{
if ($this->IsValidEntity($args['entity']))
if ($this->IsValidEntity($args['entity']) && !$this->IsEntityWithPreventedListing($args['entity']))
{
return $this->ApiResponse($this->Database->{$args['entity']}($args['objectId']));
}
@@ -77,4 +77,9 @@ class GenericEntityApiController extends BaseApiController
{
return in_array($entity, $this->OpenApiSpec->components->internalSchemas->ExposedEntity->enum);
}
private function IsEntityWithPreventedListing($entity)
{
return in_array($entity, $this->OpenApiSpec->components->internalSchemas->ExposedEntitiesPreventListing->enum);
}
}