Module: EntriesHelper
- Defined in:
- app/helpers/entries_helper.rb
Instance Method Summary collapse
- #admin_entry_link(entry) ⇒ Object
- #admin_news_link(entity) ⇒ Object
- #entry_link(entry, user, text = entry.title, options = {}) ⇒ Object
- #glimpse(text, letters = 140) ⇒ Object
- #link_to_commentable(commentable, user) ⇒ Object
- #news_link(news, text = news&.title, options = {}) ⇒ Object
- #post_link(entity, text = entity&.title, options = {}) ⇒ Object
- #preview(text, passages = 2) ⇒ Object
- #source_link(name, url) ⇒ Object
Instance Method Details
#admin_entry_link(entry) ⇒ Object
91 92 93 |
# File 'app/helpers/entries_helper.rb', line 91 def admin_entry_link(entry) link_to (entry.title || t(:untitled)), admin_entry_path(id: entry.id) end |
#admin_news_link(entity) ⇒ Object
15 16 17 |
# File 'app/helpers/entries_helper.rb', line 15 def admin_news_link(entity) link_to(entity.title, admin_news_path(id: entity.id)) end |
#entry_link(entry, user, text = entry.title, options = {}) ⇒ Object
82 83 84 85 86 87 88 |
# File 'app/helpers/entries_helper.rb', line 82 def entry_link(entry, user, text = entry.title, = {}) if entry.visible? link_to (text || t(:untitled)), entry_path({ id: entry.id }.merge()) else raw "<span class=\"not-found\">[entry #{entry.id}]</span>" end end |
#glimpse(text, letters = 140) ⇒ Object
10 11 12 |
# File 'app/helpers/entries_helper.rb', line 10 def glimpse(text, letters = 140) (text).gsub(/(\S{20})/, '\1 ').strip[0..letters] + '…' end |
#link_to_commentable(commentable, user) ⇒ Object
65 66 67 68 69 70 71 72 73 74 75 76 |
# File 'app/helpers/entries_helper.rb', line 65 def link_to_commentable(commentable, user) case commentable.class.to_s when Entry.to_s entry_link(commentable, user) when Post.to_s post_link(commentable) when News.to_s news_link(commentable) else commentable.class.to_s end end |
#news_link(news, text = news&.title, options = {}) ⇒ Object
22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 |
# File 'app/helpers/entries_helper.rb', line 22 def news_link(news, text = news&.title, = {}) if news.class.to_s == News.to_s parameters = { category_slug: news.news_category&.slug, slug: news.slug } if news.news_category.nil? text else if news.regional? link_to text, news_in_category_regional_news_index_path(parameters), else link_to text, news_in_category_news_index_path(parameters), end end else '—' end end |
#post_link(entity, text = entity&.title, options = {}) ⇒ Object
41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 |
# File 'app/helpers/entries_helper.rb', line 41 def post_link(entity, text = entity&.title, = {}) if entity.class.to_s == Post.to_s if entity.post_category.class.to_s == PostCategory.to_s parameters = { category_slug: entity.post_category.slug, slug: entity.slug } link_to text, post_in_category_posts_path(parameters) else text end elsif entity.class.to_s == News.to_s parameters = { category_slug: entity.news_category&.slug, slug: entity.slug } if entity.news_category.nil? text else if entity.regional? link_to text, news_in_category_regional_news_index_path(parameters), else link_to text, news_in_category_news_index_path(parameters), end end else '—' end end |
#preview(text, passages = 2) ⇒ Object
4 5 6 |
# File 'app/helpers/entries_helper.rb', line 4 def preview(text, passages = 2) text.split("</p>\n<p>")[0...passages].join('</p><p>') end |
#source_link(name, url) ⇒ Object
97 98 99 100 101 102 103 |
# File 'app/helpers/entries_helper.rb', line 97 def source_link(name, url) if url.blank? name else link_to(name.blank? ? URI.parse(url).host : name, url, rel: 'external') end end |