mirror of
https://github.com/discourse/discourse.git
synced 2024-11-25 02:15:46 +08:00
0a5f548635
As part of this move, we are also renaming `discourse-chat` to `chat`.
39 lines
1.1 KiB
Ruby
39 lines
1.1 KiB
Ruby
# frozen_string_literal: true
|
|
|
|
class ChatChannelArchive < ActiveRecord::Base
|
|
belongs_to :chat_channel
|
|
belongs_to :archived_by, class_name: "User"
|
|
|
|
belongs_to :destination_topic, class_name: "Topic"
|
|
|
|
def complete?
|
|
self.archived_messages >= self.total_messages && self.chat_channel.chat_messages.count.zero?
|
|
end
|
|
|
|
def failed?
|
|
!complete? && self.archive_error.present?
|
|
end
|
|
end
|
|
|
|
# == Schema Information
|
|
#
|
|
# Table name: chat_channel_archives
|
|
#
|
|
# id :bigint not null, primary key
|
|
# chat_channel_id :bigint not null
|
|
# archived_by_id :integer not null
|
|
# destination_topic_id :integer
|
|
# destination_topic_title :string
|
|
# destination_category_id :integer
|
|
# destination_tags :string is an Array
|
|
# total_messages :integer not null
|
|
# archived_messages :integer default(0), not null
|
|
# archive_error :string
|
|
# created_at :datetime not null
|
|
# updated_at :datetime not null
|
|
#
|
|
# Indexes
|
|
#
|
|
# index_chat_channel_archives_on_chat_channel_id (chat_channel_id)
|
|
#
|