diff options
Diffstat (limited to 'src/Wallabag/CoreBundle/Controller')
-rw-r--r-- | src/Wallabag/CoreBundle/Controller/EntryController.php | 5 | ||||
-rw-r--r-- | src/Wallabag/CoreBundle/Controller/WallabagRestController.php | 22 |
2 files changed, 9 insertions, 18 deletions
diff --git a/src/Wallabag/CoreBundle/Controller/EntryController.php b/src/Wallabag/CoreBundle/Controller/EntryController.php index 81ab7788..8a8f3cd7 100644 --- a/src/Wallabag/CoreBundle/Controller/EntryController.php +++ b/src/Wallabag/CoreBundle/Controller/EntryController.php | |||
@@ -192,8 +192,9 @@ class EntryController extends Controller | |||
192 | { | 192 | { |
193 | $this->checkUserAction($entry); | 193 | $this->checkUserAction($entry); |
194 | 194 | ||
195 | $entry->setDeleted(1); | 195 | $em = $this->getDoctrine()->getManager(); |
196 | $this->getDoctrine()->getManager()->flush(); | 196 | $em->remove($entry); |
197 | $em->flush(); | ||
197 | 198 | ||
198 | $this->get('session')->getFlashBag()->add( | 199 | $this->get('session')->getFlashBag()->add( |
199 | 'notice', | 200 | 'notice', |
diff --git a/src/Wallabag/CoreBundle/Controller/WallabagRestController.php b/src/Wallabag/CoreBundle/Controller/WallabagRestController.php index b9f7efea..276cfe1c 100644 --- a/src/Wallabag/CoreBundle/Controller/WallabagRestController.php +++ b/src/Wallabag/CoreBundle/Controller/WallabagRestController.php | |||
@@ -43,7 +43,6 @@ class WallabagRestController extends Controller | |||
43 | * parameters={ | 43 | * parameters={ |
44 | * {"name"="archive", "dataType"="boolean", "required"=false, "format"="true or false, all entries by default", "description"="filter by archived status."}, | 44 | * {"name"="archive", "dataType"="boolean", "required"=false, "format"="true or false, all entries by default", "description"="filter by archived status."}, |
45 | * {"name"="star", "dataType"="boolean", "required"=false, "format"="true or false, all entries by default", "description"="filter by starred status."}, | 45 | * {"name"="star", "dataType"="boolean", "required"=false, "format"="true or false, all entries by default", "description"="filter by starred status."}, |
46 | * {"name"="delete", "dataType"="boolean", "required"=false, "format"="true or false, default '0'", "description"="filter by deleted status."}, | ||
47 | * {"name"="sort", "dataType"="string", "required"=false, "format"="'created' or 'updated', default 'created'", "description"="sort entries by date."}, | 46 | * {"name"="sort", "dataType"="string", "required"=false, "format"="'created' or 'updated', default 'created'", "description"="sort entries by date."}, |
48 | * {"name"="order", "dataType"="string", "required"=false, "format"="'asc' or 'desc', default 'desc'", "description"="order of sort."}, | 47 | * {"name"="order", "dataType"="string", "required"=false, "format"="'asc' or 'desc', default 'desc'", "description"="order of sort."}, |
49 | * {"name"="page", "dataType"="integer", "required"=false, "format"="default '1'", "description"="what page you want."}, | 48 | * {"name"="page", "dataType"="integer", "required"=false, "format"="default '1'", "description"="what page you want."}, |
@@ -57,7 +56,6 @@ class WallabagRestController extends Controller | |||
57 | { | 56 | { |
58 | $isArchived = $request->query->get('archive'); | 57 | $isArchived = $request->query->get('archive'); |
59 | $isStarred = $request->query->get('star'); | 58 | $isStarred = $request->query->get('star'); |
60 | $isDeleted = $request->query->get('delete', 0); | ||
61 | $sort = $request->query->get('sort', 'created'); | 59 | $sort = $request->query->get('sort', 'created'); |
62 | $order = $request->query->get('order', 'desc'); | 60 | $order = $request->query->get('order', 'desc'); |
63 | $page = $request->query->get('page', 1); | 61 | $page = $request->query->get('page', 1); |
@@ -67,7 +65,7 @@ class WallabagRestController extends Controller | |||
67 | $entries = $this | 65 | $entries = $this |
68 | ->getDoctrine() | 66 | ->getDoctrine() |
69 | ->getRepository('WallabagCoreBundle:Entry') | 67 | ->getRepository('WallabagCoreBundle:Entry') |
70 | ->findEntries($this->getUser()->getId(), $isArchived, $isStarred, $isDeleted, $sort, $order); | 68 | ->findEntries($this->getUser()->getId(), $isArchived, $isStarred, $sort, $order); |
71 | 69 | ||
72 | if (!($entries)) { | 70 | if (!($entries)) { |
73 | throw $this->createNotFoundException(); | 71 | throw $this->createNotFoundException(); |
@@ -138,8 +136,7 @@ class WallabagRestController extends Controller | |||
138 | * {"name"="tags", "dataType"="string", "required"=false, "format"="tag1,tag2,tag3", "description"="a comma-separated list of tags."}, | 136 | * {"name"="tags", "dataType"="string", "required"=false, "format"="tag1,tag2,tag3", "description"="a comma-separated list of tags."}, |
139 | * {"name"="archive", "dataType"="boolean", "required"=false, "format"="true or false", "description"="archived the entry."}, | 137 | * {"name"="archive", "dataType"="boolean", "required"=false, "format"="true or false", "description"="archived the entry."}, |
140 | * {"name"="star", "dataType"="boolean", "required"=false, "format"="true or false", "description"="starred the entry."}, | 138 | * {"name"="star", "dataType"="boolean", "required"=false, "format"="true or false", "description"="starred the entry."}, |
141 | * {"name"="delete", "dataType"="boolean", "required"=false, "format"="true or false", "description"="flag as deleted. Default false. In case that you don't want to *really* remove it.."}, | 139 | * } |
142 | * } | ||
143 | * ) | 140 | * ) |
144 | * @return Entry | 141 | * @return Entry |
145 | */ | 142 | */ |
@@ -148,7 +145,6 @@ class WallabagRestController extends Controller | |||
148 | $title = $request->request->get("title"); | 145 | $title = $request->request->get("title"); |
149 | $tags = $request->request->get("tags", array()); | 146 | $tags = $request->request->get("tags", array()); |
150 | $isArchived = $request->request->get("archive"); | 147 | $isArchived = $request->request->get("archive"); |
151 | $isDeleted = $request->request->get("delete"); | ||
152 | $isStarred = $request->request->get("star"); | 148 | $isStarred = $request->request->get("star"); |
153 | 149 | ||
154 | if (!is_null($title)) { | 150 | if (!is_null($title)) { |
@@ -159,10 +155,6 @@ class WallabagRestController extends Controller | |||
159 | $entry->setArchived($isArchived); | 155 | $entry->setArchived($isArchived); |
160 | } | 156 | } |
161 | 157 | ||
162 | if (!is_null($isDeleted)) { | ||
163 | $entry->setDeleted($isDeleted); | ||
164 | } | ||
165 | |||
166 | if (!is_null($isStarred)) { | 158 | if (!is_null($isStarred)) { |
167 | $entry->setStarred($isStarred); | 159 | $entry->setStarred($isStarred); |
168 | } | 160 | } |
@@ -185,15 +177,13 @@ class WallabagRestController extends Controller | |||
185 | */ | 177 | */ |
186 | public function deleteEntriesAction(Entry $entry) | 178 | public function deleteEntriesAction(Entry $entry) |
187 | { | 179 | { |
188 | if ($entry->isDeleted()) { | ||
189 | throw new NotFoundHttpException('This entry is already deleted'); | ||
190 | } | ||
191 | |||
192 | $em = $this->getDoctrine()->getManager(); | 180 | $em = $this->getDoctrine()->getManager(); |
193 | $entry->setDeleted(1); | 181 | $em->remove($entry); |
194 | $em->flush(); | 182 | $em->flush(); |
195 | 183 | ||
196 | return $entry; | 184 | $json = $this->get('serializer')->serialize($entry, 'json'); |
185 | |||
186 | return new Response($json, 200, array('application/json')); | ||
197 | } | 187 | } |
198 | 188 | ||
199 | /** | 189 | /** |