From 17358f29a582152d8fe4af8b135bac98f13b8e33 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?S=C3=A9bastien=20CAS?= Date: Tue, 26 Jun 2012 21:53:06 +0200 Subject: [PATCH] [saveTagging method] add clause in doctrine query to delete only tagging of the resource given in parameter --- lib/DoctrineExtensions/Taggable/TagManager.php | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/lib/DoctrineExtensions/Taggable/TagManager.php b/lib/DoctrineExtensions/Taggable/TagManager.php index 2066a02..81fd918 100644 --- a/lib/DoctrineExtensions/Taggable/TagManager.php +++ b/lib/DoctrineExtensions/Taggable/TagManager.php @@ -173,6 +173,10 @@ public function saveTagging(Taggable $resource) ->delete($this->taggingClass, 't') ->where('t.tag_id') ->where($builder->expr()->in('t.tag', $tagsToRemove)) + ->andWhere('t.resourceType = :resourceType') + ->setParameter('resourceType', $resource->getTaggableType()) + ->andWhere('t.resourceId = :resourceId') + ->setParameter('resourceId', $resource->getTaggableId()) ->getQuery() ->getResult() ;