Add options to increase size and spacing of context menus and to gently the kobolds. Also allow showing multiple user roles.
parent
d033327136
commit
4c170d2a98
|
@ -34,6 +34,10 @@ class Settings::PreferencesController < Settings::BaseController
|
|||
:setting_rawr_federated,
|
||||
:setting_hide_stats,
|
||||
:setting_hide_captions,
|
||||
:setting_larger_menus,
|
||||
:setting_gently_kobolds,
|
||||
:setting_user_is_kobold,
|
||||
|
||||
:setting_default_privacy,
|
||||
:setting_default_sensitive,
|
||||
:setting_default_language,
|
||||
|
|
|
@ -35,18 +35,23 @@ module StreamEntriesHelper
|
|||
end
|
||||
|
||||
def account_badge(account, all: false)
|
||||
if account.bot?
|
||||
content_tag(:div, content_tag(:div, t('accounts.roles.bot'), class: 'account-role bot'), class: 'roles')
|
||||
elsif (Setting.show_staff_badge && account.user_staff?) || all
|
||||
content_tag(:div, class: 'roles') do
|
||||
content_tag(:div, class: 'roles') do
|
||||
roles = []
|
||||
roles << content_tag(:div, t('accounts.roles.bot'), class: 'account-role bot') if account.bot?
|
||||
roles << content_tag(:div, t('accounts.roles.gentlies_kobolds'), class: 'account-role gentlies') if account&.user&.setting_gently_kobolds
|
||||
roles << content_tag(:div, t('accounts.roles.kobold'), class: 'account-role kobold') if account&.user&.setting_user_is_kobold
|
||||
|
||||
if (Setting.show_staff_badge && account.user_staff?) || all
|
||||
if all && !account.user_staff?
|
||||
content_tag(:div, t('admin.accounts.roles.user'), class: 'account-role')
|
||||
roles << content_tag(:div, t('admin.accounts.roles.user'), class: 'account-role')
|
||||
elsif account.user_admin?
|
||||
content_tag(:div, t('accounts.roles.admin'), class: 'account-role admin')
|
||||
roles << content_tag(:div, t('accounts.roles.admin'), class: 'account-role admin')
|
||||
elsif account.user_moderator?
|
||||
content_tag(:div, t('accounts.roles.moderator'), class: 'account-role moderator')
|
||||
roles << content_tag(:div, t('accounts.roles.moderator'), class: 'account-role moderator')
|
||||
end
|
||||
end
|
||||
|
||||
roles.sum
|
||||
end
|
||||
end
|
||||
|
||||
|
|
|
@ -221,6 +221,18 @@
|
|||
background-color: rgba(lighten($error-red, 12%), 0.1);
|
||||
border-color: rgba(lighten($error-red, 12%), 0.5);
|
||||
}
|
||||
|
||||
&.gentlies {
|
||||
color: lighten(cyan, 25%);
|
||||
background-color: rgba(lighten(cyan, 25%), 0.1);
|
||||
border-color: rgba(lighten(cyan, 25%), 0.1);
|
||||
}
|
||||
|
||||
&.kobold {
|
||||
color: lighten(orange, 22%);
|
||||
background-color: rgba(lighten(orange, 33%), 0.1);
|
||||
border-color: rgba(lighten(orange, 33%), 0.1);
|
||||
}
|
||||
}
|
||||
|
||||
.account__header__fields {
|
||||
|
|
|
@ -19,6 +19,10 @@ class UserSettingsDecorator
|
|||
user.settings['always_local'] = always_local_preference if change?('setting_always_local')
|
||||
user.settings['rawr_federated'] = rawr_federated_preference if change?('setting_rawr_federated')
|
||||
user.settings['hide_stats'] = hide_stats_preference if change?('setting_hide_stats')
|
||||
user.settings['larger_menus'] = larger_menus_preference if change?('setting_larger_menus')
|
||||
user.settings['gently_kobolds'] = gently_kobolds_preference if change?('setting_gently_kobolds')
|
||||
user.settings['user_is_kobold'] = user_is_kobold_preference if change?('setting_user_is_kobold')
|
||||
|
||||
user.settings['hide_captions'] = hide_captions_preference if change?('setting_hide_captions')
|
||||
user.settings['notification_emails'] = merged_notification_emails if change?('notification_emails')
|
||||
user.settings['interactions'] = merged_interactions if change?('interactions')
|
||||
|
@ -44,6 +48,18 @@ class UserSettingsDecorator
|
|||
user.settings['default_content_type']= default_content_type_preference if change?('setting_default_content_type')
|
||||
end
|
||||
|
||||
def larger_menus_preference
|
||||
boolean_cast_setting 'setting_larger_menus'
|
||||
end
|
||||
|
||||
def gently_kobolds_preference
|
||||
boolean_cast_setting 'setting_gently_kobolds'
|
||||
end
|
||||
|
||||
def user_is_kobold_preference
|
||||
boolean_cast_setting 'setting_user_is_kobold'
|
||||
end
|
||||
|
||||
def merged_notification_emails
|
||||
user.settings['notification_emails'].merge coerced_settings('notification_emails').to_h
|
||||
end
|
||||
|
|
|
@ -108,6 +108,10 @@ class User < ApplicationRecord
|
|||
:hide_stats,
|
||||
:disable_color,
|
||||
:hide_captions,
|
||||
:larger_menus,
|
||||
:gently_kobolds,
|
||||
:user_is_kobold,
|
||||
|
||||
:auto_play_gif,
|
||||
:default_sensitive,
|
||||
:unfollow_modal,
|
||||
|
@ -209,6 +213,18 @@ class User < ApplicationRecord
|
|||
save!
|
||||
end
|
||||
|
||||
def setting_larger_menus
|
||||
settings.larger_menus || false
|
||||
end
|
||||
|
||||
def setting_gently_kobolds
|
||||
settings.gently_kobolds || false
|
||||
end
|
||||
|
||||
def setting_user_is_kobold
|
||||
settings.user_is_kobold || false
|
||||
end
|
||||
|
||||
def setting_default_privacy
|
||||
settings.default_privacy || 'public'
|
||||
end
|
||||
|
|
|
@ -52,5 +52,12 @@
|
|||
span .caption
|
||||
{ display: none }
|
||||
|
||||
- if current_account&.user&.setting_larger_menus
|
||||
:css
|
||||
.dropdown-menu__item a
|
||||
{ padding: 14px 14px !important; font-size: 14px !important }
|
||||
.dropdown--active .dropdown__content > ul > li > a
|
||||
{ padding: 14px 0 !important; font-size: 14px !important }
|
||||
|
||||
%body{ class: body_classes }
|
||||
= content_for?(:content) ? yield(:content) : yield
|
||||
|
|
|
@ -46,6 +46,10 @@
|
|||
.fields-group
|
||||
= f.input :setting_hide_followers_count, as: :boolean, wrapper: :with_label
|
||||
|
||||
.fields-group
|
||||
= f.input :setting_gently_kobolds, as: :boolean, wrapper: :with_label
|
||||
= f.input :setting_user_is_kobold, as: :boolean, wrapper: :with_label
|
||||
|
||||
%hr#settings_web/
|
||||
|
||||
.fields-group
|
||||
|
@ -54,6 +58,7 @@
|
|||
= f.input :setting_disable_color, as: :boolean, wrapper: :with_label
|
||||
= f.input :setting_system_font_ui, as: :boolean, wrapper: :with_label
|
||||
= f.input :setting_hide_captions, as: :boolean, wrapper: :with_label
|
||||
= f.input :setting_larger_menus, as: :boolean, wrapper: :with_label
|
||||
|
||||
.fields-group
|
||||
= f.input :setting_unfollow_modal, as: :boolean, wrapper: :with_label
|
||||
|
|
|
@ -68,6 +68,8 @@ en:
|
|||
admin: Admin
|
||||
bot: Bot
|
||||
moderator: Mod
|
||||
kobold: Gently the kobold
|
||||
gentlies_kobolds: Gentlies kobolds
|
||||
unavailable: Profile unavailable
|
||||
unfollow: Unfollow
|
||||
admin:
|
||||
|
|
|
@ -110,6 +110,9 @@ en:
|
|||
setting_hide_stats: Hide statistics on public pages
|
||||
setting_disable_color: Ignore text color formatting
|
||||
setting_hide_captions: Hide media captions
|
||||
setting_larger_menus: Increase size of menu items and spacing
|
||||
setting_gently_kobolds: Gently the kobolds
|
||||
setting_user_is_kobold: I am a kobold
|
||||
setting_aggregate_reblogs: Group repeats in timelines
|
||||
setting_auto_play_gif: Auto-play animated GIFs
|
||||
setting_boost_modal: Show confirmation dialog before repeating
|
||||
|
|
Loading…
Reference in New Issue