Sha256: 1cc145213165ca48d482cdeef6572a35774f12ac2e300d172774437bb9eb159b

Contents?: true

Size: 1.17 KB

Versions: 24

Compression:

Stored size: 1.17 KB

Contents

# frozen_string_literal: true
module ActiveAdmin
  class Comment < ActiveRecord::Base

    self.table_name = "#{table_name_prefix}active_admin_comments#{table_name_suffix}"

    belongs_to :resource, polymorphic: true, optional: true
    belongs_to :author, polymorphic: true

    validates_presence_of :body, :namespace, :resource

    before_create :set_resource_type

    # @return [String] The name of the record to use for the polymorphic relationship
    def self.resource_type(resource)
      ResourceController::Decorators.undecorate(resource).class.base_class.name.to_s
    end

    def self.find_for_resource_in_namespace(resource, namespace)
      where(
        resource_type: resource_type(resource),
        resource_id: resource.id,
        namespace: namespace.to_s
      ).order(ActiveAdmin.application.namespaces[namespace.to_sym].comments_order)
    end

    def set_resource_type
      self.resource_type = self.class.resource_type(resource)
    end

    def self.ransackable_attributes(auth_object = nil)
      authorizable_ransackable_attributes
    end

    def self.ransackable_associations(auth_object = nil)
      authorizable_ransackable_associations
    end

  end
end

Version data entries

24 entries across 24 versions & 1 rubygems

Version Path
activeadmin-3.3.0 lib/active_admin/orm/active_record/comments/comment.rb
activeadmin-4.0.0.beta15 lib/active_admin/orm/active_record/comments/comment.rb
activeadmin-4.0.0.beta14 lib/active_admin/orm/active_record/comments/comment.rb
activeadmin-4.0.0.beta13 lib/active_admin/orm/active_record/comments/comment.rb
activeadmin-4.0.0.beta12 lib/active_admin/orm/active_record/comments/comment.rb
activeadmin-3.2.5 lib/active_admin/orm/active_record/comments/comment.rb
activeadmin-4.0.0.beta11 lib/active_admin/orm/active_record/comments/comment.rb
activeadmin-3.2.4 lib/active_admin/orm/active_record/comments/comment.rb
activeadmin-4.0.0.beta10 lib/active_admin/orm/active_record/comments/comment.rb
activeadmin-4.0.0.beta9 lib/active_admin/orm/active_record/comments/comment.rb
activeadmin-3.2.3 lib/active_admin/orm/active_record/comments/comment.rb
activeadmin-4.0.0.beta8 lib/active_admin/orm/active_record/comments/comment.rb
activeadmin-4.0.0.beta7 lib/active_admin/orm/active_record/comments/comment.rb
activeadmin-3.2.2 lib/active_admin/orm/active_record/comments/comment.rb
activeadmin-4.0.0.beta6 lib/active_admin/orm/active_record/comments/comment.rb
activeadmin-3.2.1 lib/active_admin/orm/active_record/comments/comment.rb
activeadmin-4.0.0.beta5 lib/active_admin/orm/active_record/comments/comment.rb
activeadmin-4.0.0.beta4 lib/active_admin/orm/active_record/comments/comment.rb
activeadmin-4.0.0.beta3 lib/active_admin/orm/active_record/comments/comment.rb
activeadmin-4.0.0.beta2 lib/active_admin/orm/active_record/comments/comment.rb