X-Git-Url: https://git.immae.eu/?a=blobdiff_plain;f=src%2FWallabag%2FCoreBundle%2FController%2FWallabagRestController.php;h=5f56e0fc9806689b83410dfaa53d8056edb103c8;hb=6e334aba689f891a229c8a57f908f10dad5b3759;hp=5668d9348627e97fc9c66e6eb4af0a1fbf0fc5f8;hpb=4cfbd5d893aa51fd5d3b349c2695e9913591041f;p=github%2Fwallabag%2Fwallabag.git diff --git a/src/Wallabag/CoreBundle/Controller/WallabagRestController.php b/src/Wallabag/CoreBundle/Controller/WallabagRestController.php index 5668d934..5f56e0fc 100644 --- a/src/Wallabag/CoreBundle/Controller/WallabagRestController.php +++ b/src/Wallabag/CoreBundle/Controller/WallabagRestController.php @@ -5,6 +5,7 @@ namespace Wallabag\CoreBundle\Controller; use Nelmio\ApiDocBundle\Annotation\ApiDoc; use Symfony\Bundle\FrameworkBundle\Controller\Controller; use Symfony\Component\HttpFoundation\Request; +use Symfony\Component\HttpKernel\Exception\NotFoundHttpException; use Wallabag\CoreBundle\Entity\Entries; use Wallabag\CoreBundle\Entity\Tags; use Wallabag\CoreBundle\Service\Extractor; @@ -30,9 +31,11 @@ class WallabagRestController extends Controller */ public function getEntriesAction(Request $request) { - $isArchived = $request->query->get('archive', 0); - $isStarred = $request->query->get('star', 0); - $isDeleted = $request->query->get('delete', 0); + // TODO isArchived, isStarred et isDeleted ne doivent pas avoir de valeur par défaut + // TODO Si on ne passe rien, on ne filtre pas sur le statut. + $isArchived = $request->query->get('archive'); + $isStarred = $request->query->get('star'); + $isDeleted = $request->query->get('delete'); $sort = $request->query->get('sort', 'created'); $order = $request->query->get('order', 'desc'); $page = $request->query->get('page', 1); @@ -42,7 +45,7 @@ class WallabagRestController extends Controller $entries = $this ->getDoctrine() ->getRepository('WallabagCoreBundle:Entries') - ->findEntries(1, (int) $isArchived, (int) $isStarred, (int) $isDeleted, $sort, $order); + ->findEntries(1, $isArchived, $isStarred, $isDeleted, $sort, $order); if (!is_array($entries)) { throw $this->createNotFoundException(); @@ -129,6 +132,16 @@ class WallabagRestController extends Controller */ public function deleteEntriesAction(Entries $entry) { + if ($entry->isDeleted()) { + throw new NotFoundHttpException('This entry is already deleted'); + } + + $em = $this->getDoctrine()->getManager(); + $entry->setDeleted(1); + $em->persist($entry); + $em->flush(); + + return $entry; } /**