diff options
Diffstat (limited to 'app/models/discussion.rb')
| -rw-r--r-- | app/models/discussion.rb | 26 | 
1 files changed, 12 insertions, 14 deletions
| diff --git a/app/models/discussion.rb b/app/models/discussion.rb index 474ad00..7898140 100644 --- a/app/models/discussion.rb +++ b/app/models/discussion.rb @@ -66,15 +66,13 @@ class Discussion < ActiveRecord::Base    # проверяет, есть ли уже беседа между пользователями    # TODO вынести в отдельный метод а в этом возращать true/false, а то неправославно как-то    def self.find_between_users(user, user2) -    res = nil +    dialog = nil      discussions = self.joins(:speakers).includes(:users).where("speakers.user_id = ?", user.id)      Rails.logger.info "Searching for ids: #{user.id}, #{user2.id}"      discussions.each do |discussion| - -      res = discussion if discussion.private? && ((discussion.users.first == user && discussion.users.last == user2) || (discussion.users.first == user2 && discussion.users.last == user)) -      Rails.logger.info "Searching for ids: #{discussion.users.inspect}" if discussion.private? +      dialog = discussion if discussion.private? && ((discussion.users.first == user && discussion.users.last == user2) || (discussion.users.first == user2 && discussion.users.last == user))      end -    res +    dialog    end    # приватная/групповая @@ -88,14 +86,14 @@ class Discussion < ActiveRecord::Base    end    # проверка, является ли дискуссия непрочитанной для пользователя -  # def unread_for?(user) -  #   flag = self.views.find_by_user_id(user.id) -  #   if flag -  #     self.updated_at >= flag.updated_at -  #   else -  #     true -  #   end -  # end +  def unread_for?(user) +    flag = self.views.find_by_user_id(user.id) +    if flag +      self.updated_at >= flag.updated_at +    else +      true +    end +  end    # пометить как прочитанная    def mark_as_read_for(user) @@ -112,7 +110,7 @@ class Discussion < ActiveRecord::Base    def check_that_has_at_least_two_users      Rails.logger.info self.recipient_ids -    errors.add :recipient_tokens, "Укажите хотя бы одного получателя" #if !self.recipient_ids || self.recipient_ids.size < 2 +    errors.add :recipient_tokens, "Укажите хотя бы одного получателя" if !self.recipient_ids || self.recipient_ids.size < 2    end  end
\ No newline at end of file | 
