removeTag() public method

public removeTag ( Wallabag\CoreBundle\Entity\Tag $tag )
$tag Wallabag\CoreBundle\Entity\Tag
示例#1
0
 /**
  * Removes tag from entry.
  *
  * @Route("/remove-tag/{entry}/{tag}", requirements={"entry" = "\d+", "tag" = "\d+"}, name="remove_tag")
  *
  * @return \Symfony\Component\HttpFoundation\Response
  */
 public function removeTagFromEntry(Request $request, Entry $entry, Tag $tag)
 {
     $entry->removeTag($tag);
     $em = $this->getDoctrine()->getManager();
     $em->flush();
     if (count($tag->getEntries()) == 0) {
         $em->remove($tag);
     }
     $em->flush();
     $redirectUrl = $this->get('wallabag_core.helper.redirect')->to($request->headers->get('referer'));
     return $this->redirect($redirectUrl);
 }
 /**
  * Permanently remove one tag for an entry.
  *
  * @ApiDoc(
  *      requirements={
  *          {"name"="tag", "dataType"="integer", "requirement"="\w+", "description"="The tag ID"},
  *          {"name"="entry", "dataType"="integer", "requirement"="\w+", "description"="The entry ID"}
  *      }
  * )
  *
  * @return JsonResponse
  */
 public function deleteEntriesTagsAction(Entry $entry, Tag $tag)
 {
     $this->validateAuthentication();
     $this->validateUserAccess($entry->getUser()->getId());
     $entry->removeTag($tag);
     $em = $this->getDoctrine()->getManager();
     $em->persist($entry);
     $em->flush();
     $json = $this->get('serializer')->serialize($entry, 'json');
     return (new JsonResponse())->setJson($json);
 }