mirror of
https://github.com/mastodon/mastodon.git
synced 2024-08-20 21:08:15 -07:00
Clean up settings/featured_tags/index
view (#28688)
This commit is contained in:
parent
55802242ce
commit
87097a227c
3 changed files with 38 additions and 1 deletions
|
@ -9,6 +9,19 @@ module SettingsHelper
|
|||
LanguagesHelper.sorted_locale_keys(I18n.available_locales)
|
||||
end
|
||||
|
||||
def featured_tags_hint(recently_used_tags)
|
||||
safe_join(
|
||||
[
|
||||
t('simple_form.hints.featured_tag.name'),
|
||||
safe_join(
|
||||
links_for_featured_tags(recently_used_tags),
|
||||
', '
|
||||
),
|
||||
],
|
||||
' '
|
||||
)
|
||||
end
|
||||
|
||||
def session_device_icon(session)
|
||||
device = session.detection.device
|
||||
|
||||
|
@ -28,4 +41,18 @@ module SettingsHelper
|
|||
safe_join([image_tag(account.avatar.url, width: 15, height: 15, alt: '', class: 'avatar'), content_tag(:span, account.acct, class: 'username')], ' ')
|
||||
end
|
||||
end
|
||||
|
||||
private
|
||||
|
||||
def links_for_featured_tags(tags)
|
||||
tags.map { |tag| post_link_to_featured_tag(tag) }
|
||||
end
|
||||
|
||||
def post_link_to_featured_tag(tag)
|
||||
link_to(
|
||||
"##{tag.display_name}",
|
||||
settings_featured_tags_path(featured_tag: { name: tag.name }),
|
||||
method: :post
|
||||
)
|
||||
end
|
||||
end
|
||||
|
|
|
@ -12,7 +12,7 @@
|
|||
|
||||
.fields-group
|
||||
= f.input :name,
|
||||
hint: safe_join([t('simple_form.hints.featured_tag.name'), safe_join(@recently_used_tags.map { |tag| link_to("##{tag.display_name}", settings_featured_tags_path(featured_tag: { name: tag.name }), method: :post) }, ', ')], ' '),
|
||||
hint: featured_tags_hint(@recently_used_tags),
|
||||
wrapper: :with_block_label
|
||||
|
||||
.actions
|
||||
|
|
|
@ -43,10 +43,20 @@ describe Settings::FeaturedTagsController do
|
|||
end
|
||||
|
||||
describe 'GET to #index' do
|
||||
let(:tag) { Fabricate(:tag) }
|
||||
|
||||
before do
|
||||
status = Fabricate :status, account: user.account
|
||||
status.tags << tag
|
||||
end
|
||||
|
||||
it 'responds with success' do
|
||||
get :index
|
||||
|
||||
expect(response).to have_http_status(200)
|
||||
expect(response.body).to include(
|
||||
settings_featured_tags_path(featured_tag: { name: tag.name })
|
||||
)
|
||||
end
|
||||
end
|
||||
|
||||
|
|
Loading…
Reference in a new issue