Class: Decidim::UserPresenter
- Inherits:
-
SimpleDelegator
- Object
- SimpleDelegator
- Decidim::UserPresenter
show all
- Includes:
- ActionView::Helpers::UrlHelper, SanitizeHelper
- Defined in:
- app/presenters/decidim/user_presenter.rb
Overview
Instance Method Summary
collapse
#decidim_escape_translated, #decidim_html_escape, #decidim_rich_text, #decidim_sanitize, #decidim_sanitize_admin, #decidim_sanitize_editor, #decidim_sanitize_editor_admin, #decidim_sanitize_newsletter, #decidim_sanitize_translated, #decidim_url_escape, included
Instance Method Details
#avatar ⇒ Object
37
38
39
|
# File 'app/presenters/decidim/user_presenter.rb', line 37
def avatar
attached_uploader(:avatar)
end
|
#avatar_url(variant = nil) ⇒ Object
41
42
43
44
45
46
|
# File 'app/presenters/decidim/user_presenter.rb', line 41
def avatar_url(variant = nil)
return default_avatar_url if __getobj__.blocked?
return default_avatar_url unless avatar.attached?
avatar.url(variant:)
end
|
#badge ⇒ Object
25
26
27
28
29
|
# File 'app/presenters/decidim/user_presenter.rb', line 25
def badge
return "" unless officialized?
"verified-badge"
end
|
68
69
70
|
# File 'app/presenters/decidim/user_presenter.rb', line 68
def can_be_contacted?
true unless blocked?
end
|
#can_follow? ⇒ Boolean
77
78
79
|
# File 'app/presenters/decidim/user_presenter.rb', line 77
def can_follow?
true
end
|
#default_avatar_url ⇒ Object
48
49
50
|
# File 'app/presenters/decidim/user_presenter.rb', line 48
def default_avatar_url
avatar.default_url
end
|
#direct_messages_enabled?(context) ⇒ Boolean
58
59
60
61
62
|
# File 'app/presenters/decidim/user_presenter.rb', line 58
def direct_messages_enabled?(context)
return false unless __getobj__.respond_to?(:accepts_conversation?)
__getobj__.accepts_conversation?(context[:current_user])
end
|
#display_mention ⇒ Object
64
65
66
|
# File 'app/presenters/decidim/user_presenter.rb', line 64
def display_mention
link_to nickname, profile_url, data: { "external-link": false }
end
|
#name ⇒ Object
12
13
14
|
# File 'app/presenters/decidim/user_presenter.rb', line 12
def name
decidim_sanitize_translated(__getobj__.name)
end
|
#nickname ⇒ Object
nickname presented in a twitter-like style
19
20
21
22
23
|
# File 'app/presenters/decidim/user_presenter.rb', line 19
def nickname
return "" if __getobj__.blocked?
"@#{__getobj__.nickname}"
end
|
#officialization_text ⇒ Object
72
73
74
75
|
# File 'app/presenters/decidim/user_presenter.rb', line 72
def officialization_text
translated_attribute(officialized_as).presence ||
I18n.t("decidim.profiles.default_officialization_text_for_users")
end
|
#profile_path ⇒ Object
52
53
54
55
56
|
# File 'app/presenters/decidim/user_presenter.rb', line 52
def profile_path
return "" if respond_to?(:deleted?) && deleted?
decidim.profile_path(__getobj__.nickname)
end
|
#profile_url ⇒ Object
31
32
33
34
35
|
# File 'app/presenters/decidim/user_presenter.rb', line 31
def profile_url
return "" if respond_to?(:deleted?) && deleted?
decidim.profile_url(__getobj__.nickname)
end
|