New form endpoint

Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
This commit is contained in:
Roeland Jago Douma 2020-03-23 14:00:22 +01:00
parent fd9154f3c2
commit 573036d347
No known key found for this signature in database
GPG key ID: F941078878347C0C
2 changed files with 28 additions and 0 deletions

View file

@ -45,6 +45,8 @@ return [
['name' => 'api#remove_form', 'url' => '/forms/{id}', 'verb' => 'DELETE'],
['name' => 'api#get_forms', 'url' => '/get/forms', 'verb' => 'GET'],
['name' => 'api#newForm', 'url' => 'api/v1/form', 'verb' => 'POST'],
['name' => 'system#get_site_users_and_groups', 'url' => '/get/siteusers', 'verb' => 'POST'],
]
];

View file

@ -514,4 +514,30 @@ class ApiController extends Controller {
), Http::STATUS_OK);
}
/**
* @NoAdminRequired
*/
public function newForm(): Http\JSONResponse {
$event = new Event();
$currentUser = \OC::$server->getUserSession()->getUser()->getUID();
$event->setOwner($currentUser);
$event->setCreated(date('Y-m-d H:i:s'));
$event->setHash(\OC::$server->getSecureRandom()->generate(
16,
ISecureRandom::CHAR_HUMAN_READABLE
));
$event->setTitle('New form');
$event->setDescription('');
$this->eventMapper->insert($event);
return new Http\JSONResponse([
'id' => $event->getId(),
'hash' => $event->getHash(),
]);
}
}