*
* @ApiDoc(
* parameters={
- * {"name"="url", "dataType"="string", "required"=true, "format"="An url", "description"="Url to check if it exists"}
+ * {"name"="url", "dataType"="string", "required"=true, "format"="An url", "description"="Url to check if it exists"},
+ * {"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"}
* }
* )
*
{
$this->validateAuthentication();
+ $urls = $request->query->get('urls', []);
+
+ // handle multiple urls first
+ if (!empty($urls)) {
+ $results = [];
+ foreach ($urls as $url) {
+ $res = $this->getDoctrine()
+ ->getRepository('WallabagCoreBundle:Entry')
+ ->findByUrlAndUserId($url, $this->getUser()->getId());
+
+ $results[$url] = false === $res ? false : true;
+ }
+
+ $json = $this->get('serializer')->serialize($results, 'json');
+
+ return (new JsonResponse())->setJson($json);
+ }
+
+ // let's see if it is a simple url?
$url = $request->query->get('url', '');
if (empty($url)) {
$tags = $this->getDoctrine()
->getRepository('WallabagCoreBundle:Tag')
- ->findAllTagsWithEntries($this->getUser()->getId());
+ ->findAllTags($this->getUser()->getId());
$json = $this->get('serializer')->serialize($tags, 'json');