public function deleteAction()
{
if ($this->getParam("type") == "childs") {
$parentDocument = Document::getById($this->getParam("id"));
$list = new Document\Listing();
$list->setCondition("path LIKE '" . $parentDocument->getRealFullPath() . "/%'");
$list->setLimit(intval($this->getParam("amount")));
$list->setOrderKey("LENGTH(path)", false);
$list->setOrder("DESC");
$documents = $list->load();
$deletedItems = [];
foreach ($documents as $document) {
$deletedItems[] = $document->getRealFullPath();
if ($document->isAllowed("delete")) {
$document->delete();
}
}
$this->_helper->json(["success" => true, "deleted" => $deletedItems]);
} elseif ($this->getParam("id")) {
$document = Document::getById($this->getParam("id"));
if ($document->isAllowed("delete")) {
try {
$document->delete();
$this->_helper->json(["success" => true]);
} catch (\Exception $e) {
Logger::err($e);
$this->_helper->json(["success" => false, "message" => $e->getMessage()]);
}
}
}
$this->_helper->json(["success" => false, "message" => "missing_permission"]);
}