diff options
Diffstat (limited to 'app/helpers')
-rw-r--r-- | app/helpers/atom_builder_helper.rb | 5 | ||||
-rw-r--r-- | app/helpers/settings_helper.rb | 1 | ||||
-rw-r--r-- | app/helpers/stream_entries_helper.rb | 13 |
3 files changed, 19 insertions, 0 deletions
diff --git a/app/helpers/atom_builder_helper.rb b/app/helpers/atom_builder_helper.rb index 8ca3cde26..b750eeb07 100644 --- a/app/helpers/atom_builder_helper.rb +++ b/app/helpers/atom_builder_helper.rb @@ -124,6 +124,10 @@ module AtomBuilderHelper single_link_avatar(xml, account, :original, 120) end + def link_header(xml, account) + xml.link('rel' => 'header', 'type' => account.header_content_type, 'media:width' => 700, 'media:height' => 335, 'href' => full_asset_url(account.header.url(:original))) + end + def logo(xml, url) xml.logo url end @@ -160,6 +164,7 @@ module AtomBuilderHelper summary xml, account.note link_alternate xml, TagManager.instance.url_for(account) link_avatar xml, account + link_header xml, account portable_contact xml, account privacy_scope xml, account.locked? ? :private : :public end diff --git a/app/helpers/settings_helper.rb b/app/helpers/settings_helper.rb index aed8770c8..74215e8df 100644 --- a/app/helpers/settings_helper.rb +++ b/app/helpers/settings_helper.rb @@ -9,6 +9,7 @@ module SettingsHelper fr: 'Français', hu: 'Magyar', uk: 'Українська', + 'zh-CN': '简体中文', }.freeze def human_locale(locale) diff --git a/app/helpers/stream_entries_helper.rb b/app/helpers/stream_entries_helper.rb index 15601a079..a26e912a3 100644 --- a/app/helpers/stream_entries_helper.rb +++ b/app/helpers/stream_entries_helper.rb @@ -37,4 +37,17 @@ module StreamEntriesHelper def proper_status(status) status.reblog? ? status.reblog : status end + + def rtl?(text) + return false if text.empty? + + matches = /[\p{Hebrew}|\p{Arabic}|\p{Syriac}|\p{Thaana}|\p{Nko}]+/m.match(text) + + return false unless matches + + rtl_size = matches.to_a.reduce(0) { |acc, elem| acc + elem.size }.to_f + ltr_size = text.strip.size.to_f + + rtl_size / ltr_size > 0.3 + end end |