aboutsummaryrefslogtreecommitdiffstats
path: root/app/models/discussion.rb
diff options
context:
space:
mode:
authorKir Shatrov2011-12-14 01:01:23 -0800
committerKir Shatrov2011-12-14 01:01:23 -0800
commit50a241e922ff4b58b3fc3e52162f4e199e1fae3d (patch)
treec765206549958d0642698c891ed6c840805277bc /app/models/discussion.rb
parent58ebf1bc9762a4fc05ecae776253560026b5b030 (diff)
parentc94547a6bab514e6df816e105f17311ba2ce73c9 (diff)
downloadinboxes-50a241e922ff4b58b3fc3e52162f4e199e1fae3d.tar.bz2
Merge pull request #6 from pronix/master
Readme fix
Diffstat (limited to 'app/models/discussion.rb')
-rw-r--r--app/models/discussion.rb12
1 files changed, 9 insertions, 3 deletions
diff --git a/app/models/discussion.rb b/app/models/discussion.rb
index ca56596..7230538 100644
--- a/app/models/discussion.rb
+++ b/app/models/discussion.rb
@@ -84,20 +84,26 @@ class Discussion < ActiveRecord::Base
end
end
+ # return amount of unreaded messages for current discussion
+ def count_unread_mess(user)
+ speaker = find_speaker_by_user(user)
+ messages.where("updated_at > ?", speaker.updated_at ).where("user_id != ?", speaker.id ).count
+ end
+
def mark_as_read_for(user)
speaker = Speaker.find_or_create_by_user_id_and_discussion_id(user.id, self.id)
# flag.update_attributes(:updat => Time.zone.now)
speaker.touch
end
-
+
def find_speaker_by_user user
Speaker.find_by_discussion_id_and_user_id(self.id, user.id)
end
-
+
private
def check_that_has_at_least_two_users
errors.add :recipient_tokens, t("inboxes.discussions.choose_at_least_one_recipient") if !self.recipient_ids || self.recipient_ids.size < 2
end
-end \ No newline at end of file
+end