Add separate setting for sidebar text (site_short_description) (#8107)

* Add separate setting for sidebar text (site_short_description)

* Fix tests
master
Eugen Rochko 6 years ago committed by GitHub
parent 9ae53ad59e
commit cc56f2230a
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
  1. 1
      app/controllers/admin/settings_controller.rb
  2. 2
      app/models/form/admin_settings.rb
  3. 1
      app/presenters/instance_presenter.rb
  4. 3
      app/views/admin/settings/edit.html.haml
  5. 2
      app/views/application/_sidebar.html.haml
  6. 2
      app/views/shared/_og.html.haml
  7. 5
      config/locales/en.yml
  8. 1
      config/settings.yml
  9. 1
      spec/views/about/show.html.haml_spec.rb

@ -6,6 +6,7 @@ module Admin
site_contact_username
site_contact_email
site_title
site_short_description
site_description
site_extended_description
site_terms

@ -10,6 +10,8 @@ class Form::AdminSettings
:site_contact_email=,
:site_title,
:site_title=,
:site_short_description,
:site_short_description=,
:site_description,
:site_description=,
:site_extended_description,

@ -6,6 +6,7 @@ class InstancePresenter
:site_contact_email,
:open_registrations,
:site_title,
:site_short_description,
:site_description,
:site_extended_description,
:site_terms,

@ -7,7 +7,8 @@
.fields-group
= f.input :site_title, placeholder: t('admin.settings.site_title')
= f.input :site_description, wrapper: :with_block_label, as: :text, label: t('admin.settings.site_description.title'), hint: t('admin.settings.site_description.desc_html'), input_html: { rows: 8 }
= f.input :site_short_description, wrapper: :with_block_label, as: :text, label: t('admin.settings.site_short_description.title'), hint: t('admin.settings.site_short_description.desc_html'), input_html: { rows: 2 }
= f.input :site_description, wrapper: :with_block_label, as: :text, label: t('admin.settings.site_description.title'), hint: t('admin.settings.site_description.desc_html'), input_html: { rows: 4 }
= f.input :site_contact_username, placeholder: t('admin.settings.contact_information.username')
= f.input :site_contact_email, placeholder: t('admin.settings.contact_information.email')

@ -3,4 +3,4 @@
= image_tag @instance_presenter.hero&.file&.url || @instance_presenter.thumbnail&.file&.url || asset_pack_path('preview.jpg'), alt: @instance_presenter.site_title
.hero-widget__text
%p= @instance_presenter.site_description.html_safe.presence || t('about.generic_description', domain: site_hostname)
%p= @instance_presenter.site_short_description.html_safe.presence || @instance_presenter.site_description.html_safe.presence || t('about.generic_description', domain: site_hostname)

@ -3,7 +3,7 @@
= opengraph 'og:url', url_for(only_path: false)
= opengraph 'og:type', 'website'
= opengraph 'og:title', @instance_presenter.site_title
= opengraph 'og:description', strip_tags(@instance_presenter.site_description.presence || t('about.about_mastodon_html'))
= opengraph 'og:description', strip_tags(@instance_presenter.site_short_description.presence || @instance_presenter.site_description.presence || t('about.about_mastodon_html'))
= opengraph 'og:image', full_asset_url(thumbnail&.file&.url || asset_pack_path('preview.jpg', protocol: :request))
= opengraph 'og:image:width', thumbnail ? thumbnail.meta['width'] : '1200'
= opengraph 'og:image:height', thumbnail ? thumbnail.meta['height'] : '630'

@ -372,11 +372,14 @@ en:
desc_html: Show a staff badge on a user page
title: Show staff badge
site_description:
desc_html: Introductory paragraph on the frontpage and in meta tags. You can use HTML tags, in particular <code>&lt;a&gt;</code> and <code>&lt;em&gt;</code>.
desc_html: Introductory paragraph on the frontpage. Describe what makes this Mastodon server special and anything else important. You can use HTML tags, in particular <code>&lt;a&gt;</code> and <code>&lt;em&gt;</code>.
title: Instance description
site_description_extended:
desc_html: A good place for your code of conduct, rules, guidelines and other things that set your instance apart. You can use HTML tags
title: Custom extended information
site_short_description:
desc_html: Displayed in sidebar and meta tags. Describe what Mastodon is and what makes this server special in a single paragraph. If empty, defaults to instance description.
title: Short instance description
site_terms:
desc_html: You can write your own privacy policy, terms of service or other legalese. You can use HTML tags
title: Custom terms of service

@ -8,6 +8,7 @@
#
defaults: &defaults
site_title: Mastodon
site_short_description: ''
site_description: ''
site_extended_description: ''
site_terms: ''

@ -11,6 +11,7 @@ describe 'about/show.html.haml', without_verify_partial_doubles: true do
it 'has valid open graph tags' do
instance_presenter = double(:instance_presenter,
site_title: 'something',
site_short_description: 'something',
site_description: 'something',
version_number: '1.0',
source_url: 'https://github.com/tootsuite/mastodon',

Loading…
Cancel
Save