Class: AdminUserActionSerializer
Instance Method Summary
collapse
#cooked, #excerpt, #include_truncated?, included, #truncated
expire_cache_fragment!, fragment_cache
#include!
Instance Method Details
#action_type ⇒ Object
79
80
81
82
83
84
85
86
|
# File 'app/serializers/admin_user_action_serializer.rb', line 79
def action_type
object
.user_actions
.select { |ua| ua.user_id = object.user_id }
.select { |ua| [UserAction::REPLY, UserAction::RESPONSE].include? ua.action_type }
.first
.try(:action_type)
end
|
#avatar_template ⇒ Object
50
51
52
|
# File 'app/serializers/admin_user_action_serializer.rb', line 50
def avatar_template
object.user.avatar_template
end
|
#category_id ⇒ Object
62
63
64
|
# File 'app/serializers/admin_user_action_serializer.rb', line 62
def category_id
topic&.category_id
end
|
#deleted ⇒ Object
34
35
36
|
# File 'app/serializers/admin_user_action_serializer.rb', line 34
def deleted
deleted_at.present?
end
|
#deleted_by ⇒ Object
71
72
73
|
# File 'app/serializers/admin_user_action_serializer.rb', line 71
def deleted_by
BasicUserSerializer.new(object.deleted_by, root: false).as_json
end
|
#include_deleted_by? ⇒ Boolean
75
76
77
|
# File 'app/serializers/admin_user_action_serializer.rb', line 75
def include_deleted_by?
object.trashed?
end
|
#include_name? ⇒ Boolean
42
43
44
|
# File 'app/serializers/admin_user_action_serializer.rb', line 42
def include_name?
SiteSetting.enable_names?
end
|
#moderator_action ⇒ Object
66
67
68
69
|
# File 'app/serializers/admin_user_action_serializer.rb', line 66
def moderator_action
object.post_type == Post.types[:moderator_action] ||
object.post_type == Post.types[:small_action]
end
|
#name ⇒ Object
38
39
40
|
# File 'app/serializers/admin_user_action_serializer.rb', line 38
def name
object.user.name
end
|
#post_id ⇒ Object
30
31
32
|
# File 'app/serializers/admin_user_action_serializer.rb', line 30
def post_id
object.id
end
|
#slug ⇒ Object
54
55
56
|
# File 'app/serializers/admin_user_action_serializer.rb', line 54
def slug
topic&.slug
end
|
#title ⇒ Object
58
59
60
|
# File 'app/serializers/admin_user_action_serializer.rb', line 58
def title
topic&.title
end
|
#topic ⇒ Object
we need this to handle deleted topics which aren’t loaded via Topic.unscoped do
Post.includes(:topic)
end because Rails 4 “unscoped” support is still bugged (cf. github.com/rails/rails/issues/13775)
93
94
95
96
|
# File 'app/serializers/admin_user_action_serializer.rb', line 93
def topic
return @topic if @topic
@topic = object.topic || Topic.with_deleted.find_by_id(object.topic_id)
end
|
#username ⇒ Object
46
47
48
|
# File 'app/serializers/admin_user_action_serializer.rb', line 46
def username
object.user.username
end
|