Module: Thredded::UrlsHelper
- Extended by:
- UrlsHelper
- Included in:
- ApplicationController, ApplicationHelper, UrlsHelper
- Defined in:
- app/helpers/thredded/urls_helper.rb
Instance Method Summary collapse
-
#delete_post_path(post) ⇒ String
Path to the DELETE endpoint.
-
#edit_post_path(post) ⇒ String
Path to the Edit Post page.
-
#edit_preferences_path(messageboard = nil, params = {}) ⇒ String
The path to the global or messageboard edit preferences page.
-
#edit_preferences_url(messageboard = nil, params = {}) ⇒ String
The URL to the global or messageboard edit preferences page.
- #mark_unread_path(post, _params = {}) ⇒ Object
-
#permalink_path(post) ⇒ String
Post permalink path.
-
#post_path(post, user:, **params) ⇒ String
Path to the topic page with the post anchor.
-
#post_url(post, user:, **params) ⇒ String
URL of the topic page with the post anchor.
- #quote_post_path(post) ⇒ Object
-
#search_path(messageboard = nil) ⇒ String
The path to the global or messageboard search.
-
#topic_path(topic, params = {}) ⇒ String
Path to the latest unread page of the given topic.
- #topic_url(topic, params = {}) ⇒ String
-
#user_path(user) ⇒ String
Path to the user as specified by user_path.
Instance Method Details
#delete_post_path(post) ⇒ String
Returns path to the DELETE endpoint.
72 73 74 75 76 77 78 |
# File 'app/helpers/thredded/urls_helper.rb', line 72 def delete_post_path(post) if post.private_topic_post? private_topic_private_post_path(post.postable, post) else (post., post.postable, post) end end |
#edit_post_path(post) ⇒ String
Returns path to the Edit Post page.
62 63 64 65 66 67 68 |
# File 'app/helpers/thredded/urls_helper.rb', line 62 def edit_post_path(post) if post.private_topic_post? edit_private_topic_private_post_path(post.postable, post) else (post., post.postable, post) end end |
#edit_preferences_path(messageboard = nil, params = {}) ⇒ String
Returns the path to the global or messageboard edit preferences page.
94 95 96 |
# File 'app/helpers/thredded/urls_helper.rb', line 94 def edit_preferences_path( = nil, params = {}) edit_preferences_url(, params.merge(only_path: true)) end |
#edit_preferences_url(messageboard = nil, params = {}) ⇒ String
Returns the URL to the global or messageboard edit preferences page.
83 84 85 86 87 88 89 |
# File 'app/helpers/thredded/urls_helper.rb', line 83 def edit_preferences_url( = nil, params = {}) if .try(:persisted?) (, params) else edit_global_preferences_url(params) end end |
#mark_unread_path(post, _params = {}) ⇒ Object
116 117 118 119 120 121 122 |
# File 'app/helpers/thredded/urls_helper.rb', line 116 def mark_unread_path(post, _params = {}) if post.private_topic_post? mark_as_unread_private_topic_private_post_path(post.postable, post) else (post., post.postable, post) end end |
#permalink_path(post) ⇒ String
Returns post permalink path.
126 127 128 129 130 131 132 |
# File 'app/helpers/thredded/urls_helper.rb', line 126 def permalink_path(post) if post.private_topic_post? private_post_permalink_path(post) else post_permalink_path(post) end end |
#post_path(post, user:, **params) ⇒ String
Returns path to the topic page with the post anchor.
56 57 58 |
# File 'app/helpers/thredded/urls_helper.rb', line 56 def post_path(post, user:, **params) post_url(post, params.merge(user: user, only_path: true)) end |
#post_url(post, user:, **params) ⇒ String
Returns URL of the topic page with the post anchor.
46 47 48 49 50 51 |
# File 'app/helpers/thredded/urls_helper.rb', line 46 def post_url(post, user:, **params) params = params.dup params[:anchor] ||= ActionView::RecordIdentifier.dom_id(post) params[:page] ||= post.private_topic_post? ? post.page : post.page(user: user) topic_url(post.postable, params) end |
#quote_post_path(post) ⇒ Object
108 109 110 111 112 113 114 |
# File 'app/helpers/thredded/urls_helper.rb', line 108 def quote_post_path(post) if post.private_topic_post? quote_private_topic_private_post_path(post.postable, post) else (post., post.postable, post) end end |
#search_path(messageboard = nil) ⇒ String
Returns the path to the global or messageboard search.
100 101 102 103 104 105 106 |
# File 'app/helpers/thredded/urls_helper.rb', line 100 def search_path( = nil) if .try(:persisted?) () else end end |
#topic_path(topic, params = {}) ⇒ String
Returns path to the latest unread page of the given topic.
39 40 41 |
# File 'app/helpers/thredded/urls_helper.rb', line 39 def topic_path(topic, params = {}) topic_url(topic, params.merge(only_path: true)) end |
#topic_url(topic, params = {}) ⇒ String
18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 |
# File 'app/helpers/thredded/urls_helper.rb', line 18 def topic_url(topic, params = {}) if params[:page] == 1 params = params.dup params.delete(:page) end if topic.private? private_topic_url( topic.slug, params ) else ( topic..slug, topic.slug, params ) end end |
#user_path(user) ⇒ String
Returns path to the user as specified by Thredded.user_path.
12 13 14 |
# File 'app/helpers/thredded/urls_helper.rb', line 12 def user_path(user) Thredded.user_path(self, user) end |