aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/Wallabag/ApiBundle/Controller/EntryRestController.php
diff options
context:
space:
mode:
Diffstat (limited to 'src/Wallabag/ApiBundle/Controller/EntryRestController.php')
-rw-r--r--src/Wallabag/ApiBundle/Controller/EntryRestController.php8
1 files changed, 6 insertions, 2 deletions
diff --git a/src/Wallabag/ApiBundle/Controller/EntryRestController.php b/src/Wallabag/ApiBundle/Controller/EntryRestController.php
index 768c4fdc..793b91ba 100644
--- a/src/Wallabag/ApiBundle/Controller/EntryRestController.php
+++ b/src/Wallabag/ApiBundle/Controller/EntryRestController.php
@@ -18,9 +18,12 @@ class EntryRestController extends WallabagRestController
18{ 18{
19 /** 19 /**
20 * Check if an entry exist by url. 20 * Check if an entry exist by url.
21 * Return ID if entry(ies) exist (and if you give the return_id parameter).
22 * Otherwise it returns false.
21 * 23 *
22 * @ApiDoc( 24 * @ApiDoc(
23 * parameters={ 25 * parameters={
26 * {"name"="return_id", "dataType"="string", "required"=false, "format"="1 or 0", "description"="Set 1 if you want to retrieve ID in case entry(ies) exists, 0 by default"},
24 * {"name"="url", "dataType"="string", "required"=true, "format"="An url", "description"="Url to check if it exists"}, 27 * {"name"="url", "dataType"="string", "required"=true, "format"="An url", "description"="Url to check if it exists"},
25 * {"name"="urls", "dataType"="string", "required"=false, "format"="An array of urls (?urls[]=http...&urls[]=http...)", "description"="Urls (as an array) to check if it exists"} 28 * {"name"="urls", "dataType"="string", "required"=false, "format"="An array of urls (?urls[]=http...&urls[]=http...)", "description"="Urls (as an array) to check if it exists"}
26 * } 29 * }
@@ -32,6 +35,7 @@ class EntryRestController extends WallabagRestController
32 { 35 {
33 $this->validateAuthentication(); 36 $this->validateAuthentication();
34 37
38 $returnId = (null === $request->query->get('return_id')) ? 0 : (bool) $request->query->get('return_id');
35 $urls = $request->query->get('urls', []); 39 $urls = $request->query->get('urls', []);
36 40
37 // handle multiple urls first 41 // handle multiple urls first
@@ -42,7 +46,7 @@ class EntryRestController extends WallabagRestController
42 ->getRepository('WallabagCoreBundle:Entry') 46 ->getRepository('WallabagCoreBundle:Entry')
43 ->findByUrlAndUserId($url, $this->getUser()->getId()); 47 ->findByUrlAndUserId($url, $this->getUser()->getId());
44 48
45 $results[$url] = $res instanceof Entry ? $res->getId() : false; 49 $results[$url] = $res instanceof Entry ? ($returnId ? $res->getId() : true) : false;
46 } 50 }
47 51
48 return $this->sendResponse($results); 52 return $this->sendResponse($results);
@@ -59,7 +63,7 @@ class EntryRestController extends WallabagRestController
59 ->getRepository('WallabagCoreBundle:Entry') 63 ->getRepository('WallabagCoreBundle:Entry')
60 ->findByUrlAndUserId($url, $this->getUser()->getId()); 64 ->findByUrlAndUserId($url, $this->getUser()->getId());
61 65
62 $exists = $res instanceof Entry ? $res->getId() : false; 66 $exists = $res instanceof Entry ? ($returnId ? $res->getId() : true) : false;
63 67
64 return $this->sendResponse(['exists' => $exists]); 68 return $this->sendResponse(['exists' => $exists]);
65 } 69 }