module Adminterface::Extensions::Views::Comments
Public Instance Methods
default_body_class()
click to toggle source
# File lib/adminterface/extensions/orm/active_record/comments/views/active_admin_comments.rb, line 17 def default_body_class "panel-body #{comments_css_classes[:body]}".squish end
default_header_class()
click to toggle source
# File lib/adminterface/extensions/orm/active_record/comments/views/active_admin_comments.rb, line 13 def default_header_class "panel-header #{comments_css_classes.dig(:header, :wrapper)}".squish end
default_title_class()
click to toggle source
# File lib/adminterface/extensions/orm/active_record/comments/views/active_admin_comments.rb, line 5 def default_title_class "title #{comments_css_classes.dig(:header, :title)}".squish end
default_wrapper_class()
click to toggle source
# File lib/adminterface/extensions/orm/active_record/comments/views/active_admin_comments.rb, line 9 def default_wrapper_class "panel #{comments_css_classes[:wrapper]}".squish end
item_class()
click to toggle source
# File lib/adminterface/extensions/orm/active_record/comments/views/active_admin_comments.rb, line 21 def item_class @item_class ||= comments_css_classes.dig(:item) end
Protected Instance Methods
build_comment(comment)
click to toggle source
# File lib/adminterface/extensions/orm/active_record/comments/views/active_admin_comments.rb, line 47 def build_comment(comment) div for: comment, class: "active_admin_comment #{item_class[:wrapper]}".squish do div class: "active_admin_comment_header #{item_class.dig(:header, :wrapper)}".squish do div class: "active_admin_comment_meta #{item_class.dig(:header, :meta)}".squish do div class: "active_admin_comment_author #{item_class.dig(:header, :author)}".squish do comment.author ? auto_link(comment.author) : I18n.t("active_admin.comments.author_missing") end div pretty_format(comment.created_at), class: "timestamp" end comments_actions(comment) end div class: "active_admin_comment_body #{item_class[:body]}".squish do if comment.body.is_a?(ActionText::RichText) text_node comment.body else simple_format comment.body end end end end
build_comment_form()
click to toggle source
# File lib/adminterface/extensions/orm/active_record/comments/views/active_admin_comments.rb, line 84 def build_comment_form return unless authorized?(ActiveAdmin::Auth::CREATE, ActiveAdmin::Comment) input_type = configs.comments_input css_classes = comments_css_classes active_admin_form_for(ActiveAdmin::Comment.new, url: comment_form_url) do |f| f.inputs do f.input :resource_type, as: :hidden, input_html: {value: ActiveAdmin::Comment.resource_type(parent.resource)} f.input :resource_id, as: :hidden, input_html: {value: parent.resource.id} f.input :body, as: input_type, label: false, input_html: {rows: "3"} end f.actions do f.action :submit, label: I18n.t("active_admin.comments.add"), button_html: {class: css_classes["submit"]} end end end
build_comments()
click to toggle source
# File lib/adminterface/extensions/orm/active_record/comments/views/active_admin_comments.rb, line 27 def build_comments build_comment_form div id: "active_admin_comments_wrap", class: "active_admin_comments" do if @comments.any? div class: "active_admin_comments_collection #{item_class[:group]}".squish do @comments.each(&method(:build_comment)) end div class: "paginating-footer" do defaults = {theme: "active_admin", params: {anchor: "active_admin_comments_wrap"}} text_node paginate @comments, **defaults.merge(configs.comments_pager) div page_entries_info(@comments).html_safe, class: "pagination_information" end else build_empty_message end end end
comments_actions(comment)
click to toggle source
# File lib/adminterface/extensions/orm/active_record/comments/views/active_admin_comments.rb, line 71 def comments_actions(comment) return unless authorized?(ActiveAdmin::Auth::DESTROY, comment) div class: "actions" do dropdown_menu "", button: {class: item_class[:actions]}, menu: {class: "dropdown-menu-right"} do item(I18n.t("active_admin.comments.delete"), comments_url(comment.id), method: :delete, data: {confirm: I18n.t("active_admin.comments.delete_confirmation")}) end end end