# frozen_string_literal: true # == Schema Information # # Table name: comments # # id :integer not null, primary key # anonymous :boolean default(FALSE) # body :string not null # deletion_reason :string default(""), not null # destroyed_content :boolean default(FALSE) # edit_reason :string # edited_at :datetime # hidden_from_users :boolean default(FALSE), not null # ip :inet # name_at_post_time :string # referrer :string default("") # show_staff_tag :boolean default(FALSE), not null # tripcode :text # user_agent :string default("") # created_at :datetime not null # updated_at :datetime not null # deleted_by_id :integer # post_id :integer # user_id :integer # # Indexes # # index_comments_on_created_at (created_at) # index_comments_on_deleted_by_id (deleted_by_id) WHERE (deleted_by_id IS NOT NULL) # index_comments_on_post_id (post_id) # index_comments_on_user_id (user_id) # # Foreign Keys # # fk_rails_... (deleted_by_id => users.id) ON DELETE => nullify ON UPDATE => cascade # fk_rails_... (post_id => posts.id) # fk_rails_... (user_id => users.id) ON DELETE => nullify ON UPDATE => cascade # class CommentSerializer < BaseSerializer # @param [Comment] comment def self.serialize(comment, options = {}) attrs = { id: comment.id, created_at: comment.created_at, # DateTime - The creation time, in UTC, of the comment. updated_at: comment.updated_at, # DateTime - The time, in UTC, the comment was last updated at. hidden_from_users: comment.hidden_from_users? } attrs = attrs.merge({ body: comment.body }) unless comment.hidden_from_users? # String - The comment text. attrs end end