about summary refs log tree commit diff
path: root/app
diff options
context:
space:
mode:
authorpluralcafe-docker <git@plural.cafe>2018-12-11 19:07:38 +0000
committerpluralcafe-docker <git@plural.cafe>2018-12-11 19:07:38 +0000
commit1c0b2479045015b96907eaa7567bfd14e4593424 (patch)
treea054dda635ffd019bf2fdc10ed4f3341264f1490 /app
parentee5213093a084c2eb5fa97fb4bdea6019dda5cf5 (diff)
Revert "Add profile directory (#9427)"
This reverts commit ee5213093a084c2eb5fa97fb4bdea6019dda5cf5.
Diffstat (limited to 'app')
-rw-r--r--app/controllers/admin/tags_controller.rb44
-rw-r--r--app/controllers/api/v1/accounts/credentials_controller.rb2
-rw-r--r--app/controllers/directories_controller.rb48
-rw-r--r--app/controllers/settings/profiles_controller.rb2
-rw-r--r--app/helpers/admin/filter_helper.rb3
-rw-r--r--app/javascript/styles/mastodon/accounts.scss5
-rw-r--r--app/javascript/styles/mastodon/widgets.scss165
-rw-r--r--app/models/account.rb40
-rw-r--r--app/models/account_stat.rb12
-rw-r--r--app/models/account_tag_stat.rb24
-rw-r--r--app/models/concerns/account_associations.rb3
-rw-r--r--app/models/concerns/account_counters.rb1
-rw-r--r--app/models/tag.rb26
-rw-r--r--app/policies/tag_policy.rb15
-rw-r--r--app/services/update_account_service.rb5
-rw-r--r--app/views/admin/tags/_tag.html.haml12
-rw-r--r--app/views/admin/tags/index.html.haml19
-rw-r--r--app/views/directories/index.html.haml59
-rw-r--r--app/views/layouts/public.html.haml4
-rw-r--r--app/views/settings/profiles/show.html.haml4
20 files changed, 6 insertions, 487 deletions
diff --git a/app/controllers/admin/tags_controller.rb b/app/controllers/admin/tags_controller.rb
deleted file mode 100644
index 3f2256566..000000000
--- a/app/controllers/admin/tags_controller.rb
+++ /dev/null
@@ -1,44 +0,0 @@
-# frozen_string_literal: true
-
-module Admin
-  class TagsController < BaseController
-    before_action :set_tags, only: :index
-    before_action :set_tag, except: :index
-    before_action :set_filter_params
-
-    def index
-      authorize :tag, :index?
-    end
-
-    def hide
-      authorize @tag, :hide?
-      @tag.account_tag_stat.update!(hidden: true)
-      redirect_to admin_tags_path(@filter_params)
-    end
-
-    def unhide
-      authorize @tag, :unhide?
-      @tag.account_tag_stat.update!(hidden: true)
-      redirect_to admin_tags_path(@filter_params)
-    end
-
-    private
-
-    def set_tags
-      @tags = Tag.discoverable
-      @tags.merge!(Tag.hidden) if filter_params[:hidden]
-    end
-
-    def set_tag
-      @tag = Tag.find(params[:id])
-    end
-
-    def set_filter_params
-      @filter_params = filter_params.to_hash.symbolize_keys
-    end
-
-    def filter_params
-      params.permit(:hidden)
-    end
-  end
-end
diff --git a/app/controllers/api/v1/accounts/credentials_controller.rb b/app/controllers/api/v1/accounts/credentials_controller.rb
index e77f57910..dcd41b35c 100644
--- a/app/controllers/api/v1/accounts/credentials_controller.rb
+++ b/app/controllers/api/v1/accounts/credentials_controller.rb
@@ -21,7 +21,7 @@ class Api::V1::Accounts::CredentialsController < Api::BaseController
   private
 
   def account_params
-    params.permit(:display_name, :note, :avatar, :header, :locked, :bot, :discoverable, fields_attributes: [:name, :value])
+    params.permit(:display_name, :note, :avatar, :header, :locked, :bot, fields_attributes: [:name, :value])
   end
 
   def user_settings_params
diff --git a/app/controllers/directories_controller.rb b/app/controllers/directories_controller.rb
deleted file mode 100644
index 265fd5fab..000000000
--- a/app/controllers/directories_controller.rb
+++ /dev/null
@@ -1,48 +0,0 @@
-# frozen_string_literal: true
-
-class DirectoriesController < ApplicationController
-  layout 'public'
-
-  before_action :set_instance_presenter
-  before_action :set_tag, only: :show
-  before_action :set_tags
-  before_action :set_accounts
-
-  def index
-    render :index
-  end
-
-  def show
-    render :index
-  end
-
-  private
-
-  def set_tag
-    @tag = Tag.discoverable.find_by!(name: params[:id].downcase)
-  end
-
-  def set_tags
-    @tags = Tag.discoverable.limit(30)
-  end
-
-  def set_accounts
-    @accounts = Account.searchable.discoverable.page(params[:page]).per(50).tap do |query|
-      query.merge!(Account.tagged_with(@tag.id)) if @tag
-
-      if popular_requested?
-        query.merge!(Account.popular)
-      else
-        query.merge!(Account.by_recent_status)
-      end
-    end
-  end
-
-  def set_instance_presenter
-    @instance_presenter = InstancePresenter.new
-  end
-
-  def popular_requested?
-    request.path.ends_with?('/popular')
-  end
-end
diff --git a/app/controllers/settings/profiles_controller.rb b/app/controllers/settings/profiles_controller.rb
index 1a0b73d16..918dbc6c6 100644
--- a/app/controllers/settings/profiles_controller.rb
+++ b/app/controllers/settings/profiles_controller.rb
@@ -25,7 +25,7 @@ class Settings::ProfilesController < Settings::BaseController
   private
 
   def account_params
-    params.require(:account).permit(:display_name, :note, :avatar, :header, :locked, :bot, :discoverable, fields_attributes: [:name, :value])
+    params.require(:account).permit(:display_name, :note, :avatar, :header, :locked, :bot, fields_attributes: [:name, :value])
   end
 
   def set_account
diff --git a/app/helpers/admin/filter_helper.rb b/app/helpers/admin/filter_helper.rb
index 8807cc784..9a663051c 100644
--- a/app/helpers/admin/filter_helper.rb
+++ b/app/helpers/admin/filter_helper.rb
@@ -5,9 +5,8 @@ module Admin::FilterHelper
   REPORT_FILTERS       = %i(resolved account_id target_account_id).freeze
   INVITE_FILTER        = %i(available expired).freeze
   CUSTOM_EMOJI_FILTERS = %i(local remote by_domain shortcode).freeze
-  TAGS_FILTERS         = %i(hidden).freeze
 
-  FILTERS = ACCOUNT_FILTERS + REPORT_FILTERS + INVITE_FILTER + CUSTOM_EMOJI_FILTERS + TAGS_FILTERS
+  FILTERS = ACCOUNT_FILTERS + REPORT_FILTERS + INVITE_FILTER + CUSTOM_EMOJI_FILTERS
 
   def filter_link_to(text, link_to_params, link_class_params = link_to_params)
     new_url = filtered_url_for(link_to_params)
diff --git a/app/javascript/styles/mastodon/accounts.scss b/app/javascript/styles/mastodon/accounts.scss
index 63a5c61b8..06effbdb2 100644
--- a/app/javascript/styles/mastodon/accounts.scss
+++ b/app/javascript/styles/mastodon/accounts.scss
@@ -189,11 +189,6 @@
   &--under-tabs {
     border-radius: 0 0 4px 4px;
   }
-
-  &--flexible {
-    box-sizing: border-box;
-    min-height: 100%;
-  }
 }
 
 .account-role {
diff --git a/app/javascript/styles/mastodon/widgets.scss b/app/javascript/styles/mastodon/widgets.scss
index a838ca778..f843f0b42 100644
--- a/app/javascript/styles/mastodon/widgets.scss
+++ b/app/javascript/styles/mastodon/widgets.scss
@@ -240,168 +240,3 @@
     border-radius: 0;
   }
 }
-
-.page-header {
-  background: lighten($ui-base-color, 8%);
-  box-shadow: 0 0 15px rgba($base-shadow-color, 0.2);
-  border-radius: 4px;
-  padding: 60px 15px;
-  text-align: center;
-  margin: 10px 0;
-
-  h1 {
-    color: $primary-text-color;
-    font-size: 36px;
-    line-height: 1.1;
-    font-weight: 700;
-    margin-bottom: 10px;
-  }
-
-  p {
-    font-size: 15px;
-    color: $darker-text-color;
-  }
-}
-
-.directory {
-  background: $ui-base-color;
-  border-radius: 0 0 4px 4px;
-  box-shadow: 0 0 15px rgba($base-shadow-color, 0.2);
-
-  &__tag {
-    box-sizing: border-box;
-    margin-bottom: 10px;
-
-    a {
-      display: flex;
-      align-items: center;
-      justify-content: space-between;
-      background: $ui-base-color;
-      border-radius: 4px;
-      padding: 15px;
-      text-decoration: none;
-      color: inherit;
-      box-shadow: 0 0 15px rgba($base-shadow-color, 0.2);
-
-      &:hover,
-      &:active,
-      &:focus {
-        background: lighten($ui-base-color, 8%);
-      }
-    }
-
-    &.active a {
-      background: $ui-highlight-color;
-      cursor: default;
-    }
-
-    h4 {
-      flex: 1 1 auto;
-      font-size: 18px;
-      font-weight: 700;
-      color: $primary-text-color;
-
-      .fa {
-        color: $darker-text-color;
-      }
-
-      small {
-        display: block;
-        font-weight: 400;
-        font-size: 15px;
-        margin-top: 8px;
-        color: $darker-text-color;
-      }
-    }
-
-    &.active h4 {
-      &,
-      .fa,
-      small {
-        color: $primary-text-color;
-      }
-    }
-
-    .avatar-stack {
-      flex: 0 0 auto;
-      width: (36px + 4px) * 3;
-    }
-
-    &.active .avatar-stack .account__avatar {
-      border-color: $ui-highlight-color;
-    }
-  }
-}
-
-.avatar-stack {
-  display: flex;
-  justify-content: flex-end;
-
-  .account__avatar {
-    flex: 0 0 auto;
-    width: 36px;
-    height: 36px;
-    border-radius: 50%;
-    position: relative;
-    margin-left: -10px;
-    border: 2px solid $ui-base-color;
-
-    &:nth-child(1) {
-      z-index: 1;
-    }
-
-    &:nth-child(2) {
-      z-index: 2;
-    }
-
-    &:nth-child(3) {
-      z-index: 3;
-    }
-  }
-}
-
-.accounts-table {
-  width: 100%;
-
-  .account {
-    padding: 0;
-    border: 0;
-  }
-
-  thead th {
-    text-align: center;
-    text-transform: uppercase;
-    color: $darker-text-color;
-    font-weight: 700;
-    padding: 10px;
-
-    &:first-child {
-      text-align: left;
-    }
-  }
-
-  tbody td {
-    padding: 15px 0;
-    vertical-align: middle;
-    border-bottom: 1px solid lighten($ui-base-color, 8%);
-  }
-
-  tbody tr:last-child td {
-    border-bottom: 0;
-  }
-
-  &__count {
-    width: 120px;
-    text-align: center;
-    font-size: 15px;
-    font-weight: 500;
-    color: $primary-text-color;
-
-    small {
-      display: block;
-      color: $darker-text-color;
-      font-weight: 400;
-      font-size: 14px;
-    }
-  }
-}
diff --git a/app/models/account.rb b/app/models/account.rb
index f993b0765..e6b5bd69f 100644
--- a/app/models/account.rb
+++ b/app/models/account.rb
@@ -43,13 +43,11 @@
 #  featured_collection_url :string
 #  fields                  :jsonb
 #  actor_type              :string
-#  discoverable            :boolean
 #
 
 class Account < ApplicationRecord
   USERNAME_RE = /[a-z0-9_]+([a-z0-9_\.-]+[a-z0-9_]+)?/i
   MENTION_RE  = /(?<=^|[^\/[:word:]])@((#{USERNAME_RE})(?:@[a-z0-9\.\-]+[a-z0-9]+)?)/i
-  MIN_FOLLOWERS_DISCOVERY = 10
 
   include AccountAssociations
   include AccountAvatar
@@ -95,10 +93,6 @@ class Account < ApplicationRecord
   scope :matches_display_name, ->(value) { where(arel_table[:display_name].matches("#{value}%")) }
   scope :matches_domain, ->(value) { where(arel_table[:domain].matches("%#{value}%")) }
   scope :searchable, -> { where(suspended: false).where(moved_to_account_id: nil) }
-  scope :discoverable, -> { where(silenced: false).where(discoverable: true).joins(:account_stat).where(AccountStat.arel_table[:followers_count].gteq(MIN_FOLLOWERS_DISCOVERY)) }
-  scope :tagged_with, ->(tag) { joins(:accounts_tags).where(accounts_tags: { tag_id: tag }) }
-  scope :popular, -> { order('account_stats.followers_count desc') }
-  scope :by_recent_status, -> { order('(case when account_stats.last_status_at is null then 1 else 0 end) asc, account_stats.last_status_at desc') }
 
   delegate :email,
            :unconfirmed_email,
@@ -184,40 +178,6 @@ class Account < ApplicationRecord
     @keypair ||= OpenSSL::PKey::RSA.new(private_key || public_key)
   end
 
-  def tags_as_strings=(tag_names)
-    tag_names.map! { |name| name.mb_chars.downcase }
-    tag_names.uniq!(&:to_s)
-
-    # Existing hashtags
-    hashtags_map = Tag.where(name: tag_names).each_with_object({}) { |tag, h| h[tag.name] = tag }
-
-    # Initialize not yet existing hashtags
-    tag_names.each do |name|
-      next if hashtags_map.key?(name)
-      hashtags_map[name.downcase] = Tag.new(name: name)
-    end
-
-    # Remove hashtags that are to be deleted
-    tags.each do |tag|
-      if hashtags_map.key?(tag.name)
-        hashtags_map.delete(tag.name)
-      else
-        transaction do
-          tags.delete(tag)
-          tag.decrement_count!(:accounts_count)
-        end
-      end
-    end
-
-    # Add hashtags that were so far missing
-    hashtags_map.each_value do |tag|
-      transaction do
-        tags << tag
-        tag.increment_count!(:accounts_count)
-      end
-    end
-  end
-
   def fields
     (self[:fields] || []).map { |f| Field.new(self, f) }
   end
diff --git a/app/models/account_stat.rb b/app/models/account_stat.rb
index 9813aa84f..d5715268e 100644
--- a/app/models/account_stat.rb
+++ b/app/models/account_stat.rb
@@ -1,4 +1,5 @@
 # frozen_string_literal: true
+
 # == Schema Information
 #
 # Table name: account_stats
@@ -10,25 +11,16 @@
 #  followers_count :bigint(8)        default(0), not null
 #  created_at      :datetime         not null
 #  updated_at      :datetime         not null
-#  last_status_at  :datetime
 #
 
 class AccountStat < ApplicationRecord
   belongs_to :account, inverse_of: :account_stat
 
   def increment_count!(key)
-    update(attributes_for_increment(key))
+    update(key => public_send(key) + 1)
   end
 
   def decrement_count!(key)
     update(key => [public_send(key) - 1, 0].max)
   end
-
-  private
-
-  def attributes_for_increment(key)
-    attrs = { key => public_send(key) + 1 }
-    attrs[:last_status_at] = Time.now.utc if key == :statuses_count
-    attrs
-  end
 end
diff --git a/app/models/account_tag_stat.rb b/app/models/account_tag_stat.rb
deleted file mode 100644
index 3c36c155a..000000000
--- a/app/models/account_tag_stat.rb
+++ /dev/null
@@ -1,24 +0,0 @@
-# frozen_string_literal: true
-# == Schema Information
-#
-# Table name: account_tag_stats
-#
-#  id             :bigint(8)        not null, primary key
-#  tag_id         :bigint(8)        not null
-#  accounts_count :bigint(8)        default(0), not null
-#  hidden         :boolean          default(FALSE), not null
-#  created_at     :datetime         not null
-#  updated_at     :datetime         not null
-#
-
-class AccountTagStat < ApplicationRecord
-  belongs_to :tag, inverse_of: :account_tag_stat
-
-  def increment_count!(key)
-    update(key => public_send(key) + 1)
-  end
-
-  def decrement_count!(key)
-    update(key => [public_send(key) - 1, 0].max)
-  end
-end
diff --git a/app/models/concerns/account_associations.rb b/app/models/concerns/account_associations.rb
index 38e2481c5..9dba8000d 100644
--- a/app/models/concerns/account_associations.rb
+++ b/app/models/concerns/account_associations.rb
@@ -50,8 +50,5 @@ module AccountAssociations
 
     # Account migrations
     belongs_to :moved_to_account, class_name: 'Account', optional: true
-
-    # Hashtags
-    has_and_belongs_to_many :tags
   end
 end
diff --git a/app/models/concerns/account_counters.rb b/app/models/concerns/account_counters.rb
index 3581df8dd..fa3ec9a3d 100644
--- a/app/models/concerns/account_counters.rb
+++ b/app/models/concerns/account_counters.rb
@@ -16,7 +16,6 @@ module AccountCounters
            :followers_count=,
            :increment_count!,
            :decrement_count!,
-           :last_status_at,
            to: :account_stat
 
   def account_stat
diff --git a/app/models/tag.rb b/app/models/tag.rb
index b28e2cc18..4f31f796e 100644
--- a/app/models/tag.rb
+++ b/app/models/tag.rb
@@ -11,31 +11,12 @@
 
 class Tag < ApplicationRecord
   has_and_belongs_to_many :statuses
-  has_and_belongs_to_many :accounts
-
-  has_one :account_tag_stat, dependent: :destroy
 
   HASHTAG_NAME_RE = '[[:word:]_]*[[:alpha:]_·][[:word:]_]*'
   HASHTAG_RE = /(?:^|[^\/\)\w])#(#{HASHTAG_NAME_RE})/i
 
   validates :name, presence: true, uniqueness: true, format: { with: /\A#{HASHTAG_NAME_RE}\z/i }
 
-  scope :discoverable, -> { joins(:account_tag_stat).where(AccountTagStat.arel_table[:accounts_count].gt(0)).where(account_tag_stats: { hidden: false }).order(name: :asc) }
-  scope :hidden, -> { where(account_tag_stats: { hidden: true }) }
-
-  delegate :accounts_count,
-           :accounts_count=,
-           :increment_count!,
-           :decrement_count!,
-           :hidden?,
-           to: :account_tag_stat
-
-  after_save :save_account_tag_stat
-
-  def account_tag_stat
-    super || build_account_tag_stat
-  end
-
   def to_param
     name
   end
@@ -62,11 +43,4 @@ class Tag < ApplicationRecord
       Tag.where('lower(name) like lower(?)', pattern).order(:name).limit(limit)
     end
   end
-
-  private
-
-  def save_account_tag_stat
-    return unless account_tag_stat&.changed?
-    account_tag_stat.save
-  end
 end
diff --git a/app/policies/tag_policy.rb b/app/policies/tag_policy.rb
deleted file mode 100644
index c63de01db..000000000
--- a/app/policies/tag_policy.rb
+++ /dev/null
@@ -1,15 +0,0 @@
-# frozen_string_literal: true
-
-class TagPolicy < ApplicationPolicy
-  def index?
-    staff?
-  end
-
-  def hide?
-    staff?
-  end
-
-  def unhide?
-    staff?
-  end
-end
diff --git a/app/services/update_account_service.rb b/app/services/update_account_service.rb
index 36665177d..ec69d944a 100644
--- a/app/services/update_account_service.rb
+++ b/app/services/update_account_service.rb
@@ -10,7 +10,6 @@ class UpdateAccountService < BaseService
 
       authorize_all_follow_requests(account) if was_locked && !account.locked
       check_links(account)
-      process_hashtags(account)
     end
   end
 
@@ -25,8 +24,4 @@ class UpdateAccountService < BaseService
   def check_links(account)
     VerifyAccountLinksWorker.perform_async(account.id)
   end
-
-  def process_hashtags(account)
-    account.tags_as_strings = Extractor.extract_hashtags(account.note)
-  end
 end
diff --git a/app/views/admin/tags/_tag.html.haml b/app/views/admin/tags/_tag.html.haml
deleted file mode 100644
index 961b83f93..000000000
--- a/app/views/admin/tags/_tag.html.haml
+++ /dev/null
@@ -1,12 +0,0 @@
-%tr
-  %td
-    = link_to explore_hashtag_path(tag) do
-      = fa_icon 'hashtag'
-      = tag.name
-  %td
-    = t('directories.people', count: tag.accounts_count)
-  %td
-    - if tag.hidden?
-      = table_link_to 'eye', t('admin.tags.unhide'), unhide_admin_tag_path(tag.id, **@filter_params), method: :post
-    - else
-      = table_link_to 'eye-slash', t('admin.tags.hide'), hide_admin_tag_path(tag.id, **@filter_params), method: :post
diff --git a/app/views/admin/tags/index.html.haml b/app/views/admin/tags/index.html.haml
deleted file mode 100644
index 4ba395860..000000000
--- a/app/views/admin/tags/index.html.haml
+++ /dev/null
@@ -1,19 +0,0 @@
-- content_for :page_title do
-  = t('admin.tags.title')
-
-.filters
-  .filter-subset
-    %strong= t('admin.reports.status')
-    %ul
-      %li= filter_link_to t('admin.tags.visible'), hidden: nil
-      %li= filter_link_to t('admin.tags.hidden'), hidden: '1'
-
-.table-wrapper
-  %table.table
-    %thead
-      %tr
-        %th= t('admin.tags.name')
-        %th= t('admin.tags.accounts')
-        %th
-    %tbody
-      = render @tags
diff --git a/app/views/directories/index.html.haml b/app/views/directories/index.html.haml
deleted file mode 100644
index 7cd6b50d4..000000000
--- a/app/views/directories/index.html.haml
+++ /dev/null
@@ -1,59 +0,0 @@
-- content_for :page_title do
-  = t('directories.explore_mastodon')
-
-- content_for :header_tags do
-  %meta{ name: 'description', content: t('directories.explanation') }
-
-  = opengraph 'og:site_name', site_title
-  = opengraph 'og:title', t('directories.explore_mastodon', title: site_title)
-  = opengraph 'og:description', t('directories.explanation')
-
-.page-header
-  %h1= t('directories.explore_mastodon', title: site_title)
-  %p= t('directories.explanation')
-
-.grid
-  .column-0
-    .account__section-headline
-      = active_link_to t('directories.most_recently_active'), @tag ? explore_hashtag_path(@tag) : explore_path
-      = active_link_to t('directories.most_popular'), @tag ? explore_hashtag_popular_path(@tag) : explore_popular_path
-
-    - if @accounts.empty?
-      = nothing_here
-    - else
-      .directory
-        %table.accounts-table
-          %tbody
-            - @accounts.each do |account|
-              %tr
-                %td= account_link_to account
-                %td.accounts-table__count
-                  = number_to_human account.statuses_count, strip_insignificant_zeros: true
-                  %small= t('accounts.posts', count: account.statuses_count)
-                %td.accounts-table__count
-                  = number_to_human account.followers_count, strip_insignificant_zeros: true
-                  %small= t('accounts.followers', count: account.followers_count)
-                %td.accounts-table__count
-                  - if account.last_status_at.present?
-                    %time.time-ago{ datetime: account.last_status_at.iso8601, title: l(account.last_status_at) }= l account.last_status_at
-                  - else
-                    \-
-                  %small= t('accounts.last_active')
-
-      = paginate @accounts
-
-  .column-1
-    - if @tags.empty?
-      .nothing-here.nothing-here--flexible
-    - else
-      - @tags.each do |tag|
-        .directory__tag{ class: tag.id == @tag&.id ? 'active' : nil }
-          = link_to explore_hashtag_path(tag) do
-            %h4
-              = fa_icon 'hashtag'
-              = tag.name
-              %small= t('directories.people', count: tag.accounts_count)
-
-            .avatar-stack
-              - tag.accounts.limit(3).each do |account|
-                = image_tag current_account&.user&.setting_auto_play_gif ? account.avatar_original_url : account.avatar_static_url, width: 48, height: 48, alt: '', class: 'account__avatar'
diff --git a/app/views/layouts/public.html.haml b/app/views/layouts/public.html.haml
index ee49ed06c..fd5c67a99 100644
--- a/app/views/layouts/public.html.haml
+++ b/app/views/layouts/public.html.haml
@@ -5,10 +5,6 @@
         .nav-left
           = link_to root_url, class: 'brand' do
             = image_tag asset_pack_path('logo_full.svg'), alt: 'Mastodon'
-
-          = link_to t('directories.directory'), explore_path, class: 'nav-link'
-          = link_to t('about.about_this'), about_more_path, class: 'nav-link'
-          = link_to t('about.apps'), 'https://joinmastodon.org/apps', class: 'nav-link'
         .nav-center
         .nav-right
           - if user_signed_in?
diff --git a/app/views/settings/profiles/show.html.haml b/app/views/settings/profiles/show.html.haml
index 212c6cb44..2ba236fb5 100644
--- a/app/views/settings/profiles/show.html.haml
+++ b/app/views/settings/profiles/show.html.haml
@@ -18,6 +18,7 @@
 
       = f.input :avatar, wrapper: :with_label, input_html: { accept: AccountAvatar::IMAGE_MIME_TYPES.join(',') }, hint: t('simple_form.hints.defaults.avatar', dimensions: '400x400', size: number_to_human_size(AccountAvatar::LIMIT))
 
+
   %hr.spacer/
 
   .fields-group
@@ -26,9 +27,6 @@
   .fields-group
     = f.input :bot, as: :boolean, wrapper: :with_label, hint: t('simple_form.hints.defaults.bot')
 
-  .fields-group
-    = f.input :discoverable, as: :boolean, wrapper: :with_label, hint: t('simple_form.hints.defaults.discoverable_html', min_followers: Account::MIN_FOLLOWERS_DISCOVERY, path: explore_path)
-
   %hr.spacer/
 
   .fields-row