rails_admin_comments 0.1.1 → 0.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/README.md +12 -2
- data/app/assets/javascripts/rails_admin/rails_admin_comments.coffee +6 -0
- data/app/assets/stylesheets/rails_admin/rails_admin_comments.sass +3 -0
- data/app/models/concerns/rails_admin_comments/model_commentable.rb +12 -0
- data/app/models/rails_admin_comments/comment.rb +2 -2
- data/app/models/rails_admin_comments/model_comment.rb +20 -0
- data/app/views/rails_admin/main/comments.html.slim +15 -3
- data/app/views/rails_admin/main/model_comments.html.slim +54 -0
- data/config/initializers/rails_admin.rb +2 -1
- data/config/locales/ru.rails_admin_comments.yml +11 -3
- data/lib/rails_admin_comments/action.rb +88 -4
- data/lib/rails_admin_comments/models/mongoid/comments.rb +29 -0
- data/lib/rails_admin_comments/models/mongoid/model_comments.rb +29 -0
- data/lib/rails_admin_comments/version.rb +1 -1
- data/lib/rails_admin_comments.rb +13 -9
- data/rails_admin_comments.gemspec +2 -2
- metadata +8 -4
- data/lib/rails_admin_comments/mongoid.rb +0 -24
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 94998642dc3466c7483b166998e21c4a297ed5af
|
4
|
+
data.tar.gz: b1ec593416764e283ef3f631088e645da13a9849
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 7241a5c99a57620fed57585af142c05d2ef615ea16931c5a21e5aca888a849d4f0ed223a6da177871b1802e74cd0f1c44293890da63d41eb5cb415fcfa465ad8
|
7
|
+
data.tar.gz: dd14b0b239baf29ea56f459f06a00dd40ba28248f952a55359be6fe0776f1ca846d48342f0227c313a4a5cd58ce7ae01d869e2c0452da83a249afb1f4a135879
|
data/README.md
CHANGED
@@ -25,7 +25,8 @@ Or install it yourself as:
|
|
25
25
|
Add in model what you need to be commentable
|
26
26
|
|
27
27
|
```ruby
|
28
|
-
include RailsAdminComments::Commentable
|
28
|
+
include RailsAdminComments::Commentable # comments for objects
|
29
|
+
include RailsAdminComments::ModelCommentable # comments for model (from v.0.2.0)
|
29
30
|
```
|
30
31
|
|
31
32
|
And add action available for this model_name
|
@@ -38,9 +39,18 @@ And add action available for this model_name
|
|
38
39
|
].include? bindings[:abstract_model].model_name
|
39
40
|
end
|
40
41
|
end
|
42
|
+
|
43
|
+
# from v.0.2.0
|
44
|
+
model_comments do
|
45
|
+
visible do
|
46
|
+
[
|
47
|
+
"SomeModel"
|
48
|
+
].include? bindings[:abstract_model].model_name
|
49
|
+
end
|
50
|
+
end
|
41
51
|
```
|
42
52
|
|
43
|
-
Also you need to add method name_for_rails_admin_comments for user model_name
|
53
|
+
Also you need to add method name_for_rails_admin_comments for user model_name
|
44
54
|
|
45
55
|
```ruby
|
46
56
|
def name_for_rails_admin_comments
|
@@ -4,3 +4,9 @@ $(document).delegate ".comment_edit_form_link", 'click', (e)->
|
|
4
4
|
target = $(link.attr('href'))
|
5
5
|
$('.comment_edit_form').addClass('hidden').closest('.comment_block').find(".content_block").removeClass('hidden')
|
6
6
|
target.removeClass('hidden').closest('.comment_block').find(".content_block").addClass('hidden')
|
7
|
+
|
8
|
+
$(document).delegate ".comment_delete_form_link", 'click', (e)->
|
9
|
+
e.preventDefault()
|
10
|
+
link = $(e.currentTarget)
|
11
|
+
target = $(link.attr('href'))
|
12
|
+
target.find('form').prepend("<input type='hidden' name='_method' value='delete'></input>").submit()
|
@@ -9,12 +9,12 @@ module RailsAdminComments
|
|
9
9
|
class Comment
|
10
10
|
#binding.pry
|
11
11
|
if RailsAdminComments.mongoid?
|
12
|
-
include RailsAdminComments::Mongoid
|
12
|
+
include RailsAdminComments::Comments::Mongoid
|
13
13
|
end
|
14
14
|
|
15
15
|
if RailsAdminComments.active_record?
|
16
16
|
self.table_name = "rails_admin_comments"
|
17
17
|
end
|
18
|
-
|
18
|
+
|
19
19
|
end
|
20
20
|
end
|
@@ -0,0 +1,20 @@
|
|
1
|
+
if RailsAdminComments.active_record?
|
2
|
+
module RailsAdminComments
|
3
|
+
class ModelComment < ActiveRecord::Base
|
4
|
+
end
|
5
|
+
end
|
6
|
+
end
|
7
|
+
|
8
|
+
module RailsAdminComments
|
9
|
+
class ModelComment
|
10
|
+
#binding.pry
|
11
|
+
if RailsAdminComments.mongoid?
|
12
|
+
include RailsAdminComments::ModelComments::Mongoid
|
13
|
+
end
|
14
|
+
|
15
|
+
if RailsAdminComments.active_record?
|
16
|
+
self.table_name = "rails_admin_model_comments"
|
17
|
+
end
|
18
|
+
|
19
|
+
end
|
20
|
+
end
|
@@ -1,3 +1,6 @@
|
|
1
|
+
- available_users = User.admins.to_a + User.managers.to_a
|
2
|
+
- available_users.uniq!
|
3
|
+
|
1
4
|
#rails_admin_comments_wrapper
|
2
5
|
= stylesheet_link_tag 'rails_admin/rails_admin_comments'
|
3
6
|
= javascript_include_tag 'rails_admin/rails_admin_comments'
|
@@ -16,7 +19,10 @@
|
|
16
19
|
= link_to creator.name_for_rails_admin_comments, show_path(model_name: model_name, id: creator._id), class: "creator_link"
|
17
20
|
span.created_at= Russian::strftime c.c_at, "%d.%m.%Y в %H:%M:%S"
|
18
21
|
span.updated_at= " (изм. #{Russian::strftime c.u_at, "%d.%m.%Y в %H:%M:%S"})" if Russian::strftime c.u_at
|
19
|
-
|
22
|
+
- if creator == current_user or (current_user.respond_to?(:admin?) and current_user.admin?)
|
23
|
+
= link_to 'изменить', "##{edit_form_id}", class: 'comment_edit_form_link'
|
24
|
+
= " | "
|
25
|
+
= link_to 'удалить', "##{edit_form_id}", class: 'comment_delete_form_link'
|
20
26
|
p.content_block= c.content
|
21
27
|
p
|
22
28
|
.comment_edit_form.hidden{id="#{edit_form_id}"}
|
@@ -27,6 +33,8 @@
|
|
27
33
|
- @comment = @message = nil
|
28
34
|
|
29
35
|
= form_for c, url: url, method: :post do |f|
|
36
|
+
- if current_user.admin?
|
37
|
+
p= f.collection_check_boxes :visible_for_user_ids, available_users, :id, :name_for_rails_admin_comments
|
30
38
|
p= f.hidden_field :id
|
31
39
|
p= f.text_area :content
|
32
40
|
p= f.submit
|
@@ -35,8 +43,12 @@
|
|
35
43
|
hr
|
36
44
|
- @comment ||= RailsAdminComments::Comment.new
|
37
45
|
p
|
46
|
+
- unless @message.blank?
|
47
|
+
p== @message
|
38
48
|
= form_for @comment, url: url, method: :post do |f|
|
39
|
-
-
|
40
|
-
|
49
|
+
- if current_user.admin?
|
50
|
+
- if @comment.visible_for_users.blank?
|
51
|
+
- @comment.visible_for_users << available_users.select { |u| u.roles.include?("admin")}
|
52
|
+
p= f.collection_check_boxes :visible_for_user_ids, available_users, :id, :email
|
41
53
|
p= f.text_area :content
|
42
54
|
p= f.submit
|
@@ -0,0 +1,54 @@
|
|
1
|
+
- available_users = User.admins.to_a + User.managers.to_a
|
2
|
+
- available_users.uniq!
|
3
|
+
|
4
|
+
#rails_admin_comments_wrapper
|
5
|
+
= stylesheet_link_tag 'rails_admin/rails_admin_comments'
|
6
|
+
= javascript_include_tag 'rails_admin/rails_admin_comments'
|
7
|
+
|
8
|
+
#rails_admin_comments
|
9
|
+
|
10
|
+
- url = model_comments_path(model_name: @abstract_model)
|
11
|
+
.controls
|
12
|
+
- @comments.each do |c|
|
13
|
+
.comment_block
|
14
|
+
- edit_form_id = "comment_#{c.id}_edit"
|
15
|
+
p
|
16
|
+
- creator = c.creator
|
17
|
+
- if creator
|
18
|
+
- model_name = creator.class.to_param.gsub("::", "~").underscore
|
19
|
+
= link_to creator.name_for_rails_admin_comments, show_path(model_name: model_name, id: creator._id), class: "creator_link"
|
20
|
+
span.created_at= Russian::strftime c.c_at, "%d.%m.%Y в %H:%M:%S"
|
21
|
+
span.updated_at= " (изм. #{Russian::strftime c.u_at, "%d.%m.%Y в %H:%M:%S"})" if Russian::strftime c.u_at
|
22
|
+
- if creator == current_user or (current_user.respond_to?(:admin?) and current_user.admin?)
|
23
|
+
= link_to 'изменить', "##{edit_form_id}", class: 'comment_edit_form_link'
|
24
|
+
= " | "
|
25
|
+
= link_to 'удалить', "##{edit_form_id}", class: 'comment_delete_form_link'
|
26
|
+
p.content_block= c.content
|
27
|
+
p
|
28
|
+
.comment_edit_form.hidden{id="#{edit_form_id}"}
|
29
|
+
- if @comment and @comment._id == c._id
|
30
|
+
- c = @comment
|
31
|
+
- unless @message.blank?
|
32
|
+
p== @message
|
33
|
+
- @comment = @message = nil
|
34
|
+
|
35
|
+
= form_for c, url: url, method: :post do |f|
|
36
|
+
- if current_user.admin?
|
37
|
+
p= f.collection_check_boxes :visible_for_user_ids, available_users, :id, :name_for_rails_admin_comments
|
38
|
+
p= f.hidden_field :id
|
39
|
+
p= f.text_area :content
|
40
|
+
p= f.submit
|
41
|
+
br
|
42
|
+
|
43
|
+
hr
|
44
|
+
- @comment ||= RailsAdminComments::ModelComment.new
|
45
|
+
p
|
46
|
+
- unless @message.blank?
|
47
|
+
p== @message
|
48
|
+
= form_for @comment, url: url, method: :post do |f|
|
49
|
+
- if current_user.admin?
|
50
|
+
- if @comment.visible_for_users.blank?
|
51
|
+
- @comment.visible_for_users << available_users.select { |u| u.roles.include?("admin")}
|
52
|
+
p= f.collection_check_boxes :visible_for_user_ids, available_users, :id, :email
|
53
|
+
p= f.text_area :content
|
54
|
+
p= f.submit
|
@@ -2,9 +2,17 @@ ru:
|
|
2
2
|
admin:
|
3
3
|
actions:
|
4
4
|
comments:
|
5
|
-
menu: "
|
6
|
-
breadcrumb: "
|
5
|
+
menu: "Комментарии"
|
6
|
+
breadcrumb: "Комментарии"
|
7
7
|
error: "Ошибка"
|
8
8
|
error_no_data: "Нет данных"
|
9
9
|
success: "Успешно"
|
10
|
-
title: "
|
10
|
+
title: "Комментарии"
|
11
|
+
|
12
|
+
model_comments:
|
13
|
+
menu: "Комментарии"
|
14
|
+
breadcrumb: "Комментарии"
|
15
|
+
error: "Ошибка"
|
16
|
+
error_no_data: "Нет данных"
|
17
|
+
success: "Успешно"
|
18
|
+
title: "Комментарии"
|
@@ -24,11 +24,10 @@ module RailsAdmin
|
|
24
24
|
|
25
25
|
register_instance_option :controller do
|
26
26
|
Proc.new do |klass|
|
27
|
-
@config = ::RailsAdminComments::Configuration.new @abstract_model
|
28
|
-
|
29
27
|
if params['id'].present?
|
30
|
-
@
|
28
|
+
@config = ::RailsAdminComments::Configuration.new @abstract_model
|
31
29
|
if request.get?
|
30
|
+
@comments = @object.rails_admin_comments.by_date.enabled.for_user(current_user) || []
|
32
31
|
render action: @action.template_name
|
33
32
|
|
34
33
|
elsif request.post?
|
@@ -40,6 +39,7 @@ module RailsAdmin
|
|
40
39
|
@comment = @object.rails_admin_comments.new if @comment.nil?
|
41
40
|
|
42
41
|
@comment.content = params['rails_admin_comments_comment']['content']
|
42
|
+
@comment.visible_for_user_ids = params['rails_admin_comments_comment']['visible_for_user_ids']
|
43
43
|
|
44
44
|
if @comment.save
|
45
45
|
@comment = nil
|
@@ -72,7 +72,91 @@ module RailsAdmin
|
|
72
72
|
end
|
73
73
|
|
74
74
|
register_instance_option :http_methods do
|
75
|
-
[:get, :post]
|
75
|
+
[:get, :post, :delete]
|
76
|
+
end
|
77
|
+
end
|
78
|
+
end
|
79
|
+
end
|
80
|
+
end
|
81
|
+
|
82
|
+
|
83
|
+
|
84
|
+
module RailsAdmin
|
85
|
+
module Config
|
86
|
+
module Actions
|
87
|
+
class ModelComments < Comments
|
88
|
+
RailsAdmin::Config::Actions.register(self)
|
89
|
+
|
90
|
+
register_instance_option :collection? do
|
91
|
+
true
|
92
|
+
end
|
93
|
+
|
94
|
+
register_instance_option :member? do
|
95
|
+
false
|
96
|
+
end
|
97
|
+
|
98
|
+
register_instance_option :route_fragment do
|
99
|
+
'model_comments'
|
100
|
+
end
|
101
|
+
|
102
|
+
register_instance_option :controller do
|
103
|
+
Proc.new do |klass|
|
104
|
+
@config = ::RailsAdminComments::Configuration.new @abstract_model
|
105
|
+
@model = @abstract_model.model
|
106
|
+
if request.get?
|
107
|
+
@comments = @model.rails_admin_model_comments.by_date.enabled.for_user(current_user) || []
|
108
|
+
render action: @action.template_name
|
109
|
+
|
110
|
+
elsif request.post?
|
111
|
+
begin
|
112
|
+
if params['rails_admin_comments_model_comment'].present?
|
113
|
+
if params['rails_admin_comments_model_comment']['id'].present?
|
114
|
+
@comment = @model.rails_admin_model_comments.find(params['rails_admin_comments_model_comment']['id'])
|
115
|
+
end
|
116
|
+
@comment ||= @model.rails_admin_model_comments.new
|
117
|
+
|
118
|
+
@comment.content = params['rails_admin_comments_model_comment']['content']
|
119
|
+
@comment.visible_for_user_ids = params['rails_admin_comments_model_comment']['visible_for_user_ids']
|
120
|
+
|
121
|
+
if @comment.save
|
122
|
+
@comment = nil
|
123
|
+
@message = "<strong class='success'>#{I18n.t('admin.actions.model_comments.success')}!</strong>"
|
124
|
+
|
125
|
+
else
|
126
|
+
@message = []
|
127
|
+
@message << "<strong class='error'>#{I18n.t('admin.actions.model_comments.error')}!</strong>"
|
128
|
+
@comment.errors.each do |e|
|
129
|
+
@message << "<p>#{e.message}</p>"
|
130
|
+
end
|
131
|
+
@message = @message.join
|
132
|
+
end
|
133
|
+
else
|
134
|
+
@message = "<strong class='error'>#{I18n.t('admin.actions.model_comments.error')}</strong>:<p>#{I18n.t('admin.actions.model_comments.error_no_data')}</p>"
|
135
|
+
end
|
136
|
+
|
137
|
+
rescue Exception => e
|
138
|
+
@message = "<strong class='error'>#{I18n.t('admin.actions.comments.error')}</strong>: #{e}"
|
139
|
+
end
|
140
|
+
|
141
|
+
render action: @action.template_name
|
142
|
+
|
143
|
+
elsif request.delete?
|
144
|
+
if params['rails_admin_comments_model_comment']['id'].present?
|
145
|
+
@comment = @model.rails_admin_model_comments.find(params['rails_admin_comments_model_comment']['id'])
|
146
|
+
end
|
147
|
+
if @comment and @comment.destroy
|
148
|
+
@comment = nil
|
149
|
+
@message = "Удалено"
|
150
|
+
else
|
151
|
+
@message = "Удаление не удалось"
|
152
|
+
end
|
153
|
+
render action: @action.template_name
|
154
|
+
end
|
155
|
+
end
|
156
|
+
end
|
157
|
+
|
158
|
+
register_instance_option :link_icon do
|
159
|
+
'icon-comment'
|
76
160
|
end
|
77
161
|
end
|
78
162
|
end
|
@@ -0,0 +1,29 @@
|
|
1
|
+
module RailsAdminComments
|
2
|
+
module Comments
|
3
|
+
module Mongoid
|
4
|
+
extend ActiveSupport::Concern
|
5
|
+
included do
|
6
|
+
include ::Mongoid::Document
|
7
|
+
include ::Mongoid::Timestamps::Short
|
8
|
+
include ::Mongoid::Userstamp
|
9
|
+
|
10
|
+
belongs_to :rails_admin_commentable, polymorphic: true
|
11
|
+
|
12
|
+
store_in collection: "rails_admin_comments"
|
13
|
+
|
14
|
+
field :enabled, type: ::Mongoid::VERSION.to_i < 4 ? Boolean : ::Mongoid::Boolean, default: true
|
15
|
+
scope :enabled, -> { where(enabled: true) }
|
16
|
+
|
17
|
+
scope :by_date, -> { order([:c_at, :asc]) }
|
18
|
+
|
19
|
+
field :content
|
20
|
+
validates_presence_of :content
|
21
|
+
|
22
|
+
has_and_belongs_to_many :visible_for_users, class_name: "User", inverse_of: nil
|
23
|
+
scope :for_user, ->(user) {
|
24
|
+
any_of({visible_for_user_ids: user}, {visible_for_user_ids: nil})
|
25
|
+
}
|
26
|
+
end
|
27
|
+
end
|
28
|
+
end
|
29
|
+
end
|
@@ -0,0 +1,29 @@
|
|
1
|
+
module RailsAdminComments
|
2
|
+
module ModelComments
|
3
|
+
module Mongoid
|
4
|
+
extend ActiveSupport::Concern
|
5
|
+
included do
|
6
|
+
include ::Mongoid::Document
|
7
|
+
include ::Mongoid::Timestamps::Short
|
8
|
+
include ::Mongoid::Userstamp
|
9
|
+
|
10
|
+
field :model_name, type: String
|
11
|
+
|
12
|
+
store_in collection: "rails_admin_model_comments"
|
13
|
+
|
14
|
+
field :enabled, type: ::Mongoid::VERSION.to_i < 4 ? Boolean : ::Mongoid::Boolean, default: true
|
15
|
+
scope :enabled, -> { where(enabled: true) }
|
16
|
+
|
17
|
+
scope :by_date, -> { order([:c_at, :asc]) }
|
18
|
+
|
19
|
+
field :content
|
20
|
+
validates_presence_of :content
|
21
|
+
|
22
|
+
has_and_belongs_to_many :visible_for_users, class_name: "User", inverse_of: nil
|
23
|
+
scope :for_user, ->(user) {
|
24
|
+
any_of({visible_for_user_ids: user}, {visible_for_user_ids: nil})
|
25
|
+
}
|
26
|
+
end
|
27
|
+
end
|
28
|
+
end
|
29
|
+
end
|
data/lib/rails_admin_comments.rb
CHANGED
@@ -4,8 +4,15 @@ require "rails_admin_comments/version"
|
|
4
4
|
require 'mongoid'
|
5
5
|
require 'mongoid_userstamp'
|
6
6
|
|
7
|
+
require "rails_admin_comments/engine"
|
8
|
+
|
9
|
+
require 'rails_admin_comments/configuration'
|
10
|
+
|
7
11
|
require 'rails_admin/config/actions'
|
8
12
|
require 'rails_admin/config/model'
|
13
|
+
require 'rails_admin_comments/action'
|
14
|
+
# require 'rails_admin_comments/model'
|
15
|
+
require 'rails_admin_comments/helper'
|
9
16
|
|
10
17
|
module RailsAdminComments
|
11
18
|
class << self
|
@@ -27,14 +34,11 @@ module RailsAdminComments
|
|
27
34
|
end
|
28
35
|
end
|
29
36
|
|
30
|
-
|
37
|
+
module Comments
|
38
|
+
autoload :Mongoid, "rails_admin_comments/models/mongoid/comments"
|
39
|
+
end
|
40
|
+
module ModelComments
|
41
|
+
autoload :Mongoid, "rails_admin_comments/models/mongoid/model_comments"
|
42
|
+
end
|
31
43
|
# autoload :RailsAdminConfig, "rails_admin_comments/rails_admin_config"
|
32
44
|
end
|
33
|
-
|
34
|
-
|
35
|
-
require "rails_admin_comments/engine"
|
36
|
-
|
37
|
-
require 'rails_admin_comments/configuration'
|
38
|
-
require 'rails_admin_comments/action'
|
39
|
-
# require 'rails_admin_comments/model'
|
40
|
-
require 'rails_admin_comments/helper'
|
@@ -29,8 +29,8 @@ Gem::Specification.new do |spec|
|
|
29
29
|
|
30
30
|
spec.add_development_dependency "bundler", "~> 1.10"
|
31
31
|
spec.add_development_dependency "rake", "~> 10.0"
|
32
|
-
|
33
|
-
spec.add_dependency "
|
32
|
+
|
33
|
+
spec.add_dependency "rails_admin"
|
34
34
|
spec.add_dependency "mongoid", [">= 5.0", "< 6.0"]
|
35
35
|
spec.add_dependency "glebtv_mongoid_userstamp"
|
36
36
|
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: rails_admin_comments
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.2.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Alexander Kiseliev
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date: 2016-
|
11
|
+
date: 2016-05-16 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: bundler
|
@@ -39,7 +39,7 @@ dependencies:
|
|
39
39
|
- !ruby/object:Gem::Version
|
40
40
|
version: '10.0'
|
41
41
|
- !ruby/object:Gem::Dependency
|
42
|
-
name:
|
42
|
+
name: rails_admin
|
43
43
|
requirement: !ruby/object:Gem::Requirement
|
44
44
|
requirements:
|
45
45
|
- - ">="
|
@@ -104,8 +104,11 @@ files:
|
|
104
104
|
- app/assets/javascripts/rails_admin/rails_admin_comments.coffee
|
105
105
|
- app/assets/stylesheets/rails_admin/rails_admin_comments.sass
|
106
106
|
- app/models/concerns/rails_admin_comments/commentable.rb
|
107
|
+
- app/models/concerns/rails_admin_comments/model_commentable.rb
|
107
108
|
- app/models/rails_admin_comments/comment.rb
|
109
|
+
- app/models/rails_admin_comments/model_comment.rb
|
108
110
|
- app/views/rails_admin/main/comments.html.slim
|
111
|
+
- app/views/rails_admin/main/model_comments.html.slim
|
109
112
|
- bin/console
|
110
113
|
- bin/setup
|
111
114
|
- config/initializers/rails_admin.rb
|
@@ -115,7 +118,8 @@ files:
|
|
115
118
|
- lib/rails_admin_comments/configuration.rb
|
116
119
|
- lib/rails_admin_comments/engine.rb
|
117
120
|
- lib/rails_admin_comments/helper.rb
|
118
|
-
- lib/rails_admin_comments/mongoid.rb
|
121
|
+
- lib/rails_admin_comments/models/mongoid/comments.rb
|
122
|
+
- lib/rails_admin_comments/models/mongoid/model_comments.rb
|
119
123
|
- lib/rails_admin_comments/version.rb
|
120
124
|
- rails_admin_comments.gemspec
|
121
125
|
- release.sh
|
@@ -1,24 +0,0 @@
|
|
1
|
-
module RailsAdminComments
|
2
|
-
module Mongoid
|
3
|
-
extend ActiveSupport::Concern
|
4
|
-
included do
|
5
|
-
include ::Mongoid::Document
|
6
|
-
include ::Mongoid::Timestamps::Short
|
7
|
-
include ::Mongoid::Userstamp
|
8
|
-
|
9
|
-
belongs_to :rails_admin_commentable, polymorphic: true
|
10
|
-
|
11
|
-
store_in collection: "rails_admin_comments"
|
12
|
-
|
13
|
-
field :enabled, type: ::Mongoid::VERSION.to_i < 4 ? Boolean : ::Mongoid::Boolean, default: true
|
14
|
-
scope :enabled, -> { where(enabled: true) }
|
15
|
-
|
16
|
-
scope :by_date, -> { order([:c_at, :asc]) }
|
17
|
-
|
18
|
-
field :content
|
19
|
-
validates_presence_of :content
|
20
|
-
|
21
|
-
scope :for_user, ->(user) {}
|
22
|
-
end
|
23
|
-
end
|
24
|
-
end
|