Adds watch/unwatch functionality at forum topic level (#1912).

Users who create/reply a topic are automatically added as watchers but are now able to unwatch the topic.

git-svn-id: http://redmine.rubyforge.org/svn/trunk@1878 e93f8b46-1217-0410-a6f0-8f06a7374b81
This commit is contained in:
Jean-Philippe Lang committed 2008-09-19 15:32:52 +00:00
1 parent 9e7bce6a94
commit 16e09bfd77
7 files changed
+44 -6

No files matched your search

@@ -0,0 +1,14 @@
class SetTopicAuthorsAsWatchers < ActiveRecord::Migration
def self.up
# Sets active users who created/replied a topic as watchers of the topic
# so that the new watch functionality at topic level doesn't affect notifications behaviour
Message.connection.execute("INSERT INTO watchers (watchable_type, watchable_id, user_id)" +
" SELECT DISTINCT 'Message', COALESCE(messages.parent_id, messages.id), messages.author_id FROM messages, users" +
" WHERE messages.author_id = users.id AND users.status = 1")
end
def self.down
# Removes all message watchers
Watcher.delete_all("watchable_type = 'Message'")
end
end