summaryrefslogtreecommitdiffstats
path: root/lib/private/Comments
diff options
context:
space:
mode:
authorArthur Schiwon <blizzz@arthur-schiwon.de>2016-10-12 18:06:22 +0200
committerArthur Schiwon <blizzz@arthur-schiwon.de>2016-10-12 18:06:22 +0200
commit1bcd2ca8e35dca6e68e5f06506ade0a78a2beae8 (patch)
treee1af5850f05bfd165c3542f0b50a49fe623452c0 /lib/private/Comments
parenta9671a4dc2cc904ebb852c7804204ac9f245017e (diff)
downloadnextcloud-server-1bcd2ca8e35dca6e68e5f06506ade0a78a2beae8.tar.gz
nextcloud-server-1bcd2ca8e35dca6e68e5f06506ade0a78a2beae8.zip
emit pre-update event for comments
* notifications can be cleaned up, no polluted DB * updating comments will re-notify users or remove notifications, depending on the message Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
Diffstat (limited to 'lib/private/Comments')
-rw-r--r--lib/private/Comments/Manager.php6
1 files changed, 6 insertions, 0 deletions
diff --git a/lib/private/Comments/Manager.php b/lib/private/Comments/Manager.php
index f7b23dd5f58..b3ecab731e1 100644
--- a/lib/private/Comments/Manager.php
+++ b/lib/private/Comments/Manager.php
@@ -536,6 +536,12 @@ class Manager implements ICommentsManager {
* @throws NotFoundException
*/
protected function update(IComment $comment) {
+ // for properly working preUpdate Events we need the old comments as is
+ // in the DB and overcome caching. Also avoid that outdated information stays.
+ $this->uncache($comment->getId());
+ $this->sendEvent(CommentsEvent::EVENT_PRE_UPDATE, $this->get($comment->getId()));
+ $this->uncache($comment->getId());
+
$qb = $this->dbConn->getQueryBuilder();
$affectedRows = $qb
->update('comments')