2
0
Fork 0
mirror of https://github.com/discourse/discourse.git synced 2025-10-03 17:21:20 +08:00

DEV: remove experimental_sidebar_messages_count_enabled_groups (#34167)

Removes the temporary `experimental_sidebar_messages_count_enabled_groups` site setting.

Reverts #33774.
This commit is contained in:
Yuriy Kurant 2025-08-11 07:38:50 +03:00 committed by GitHub
parent 4a17a31770
commit f8ac0bad72
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
9 changed files with 34 additions and 72 deletions

View file

@ -16,10 +16,7 @@ export default class MessagesDropdown extends Component {
}

get showUnreadIcon() {
return (
this.currentUser?.use_experimental_sidebar_messages_count &&
!this.currentUser?.sidebarShowCountOfNewItems
);
return !this.currentUser.sidebarShowCountOfNewItems;
}

@action

View file

@ -67,12 +67,8 @@ export default class extends Controller {
return value;
}

get showUnread() {
return this.currentUser?.use_experimental_sidebar_messages_count;
}

get showCount() {
return this.showUnread && this.currentUser?.sidebarShowCountOfNewItems;
return this.currentUser.sidebarShowCountOfNewItems;
}

@cached
@ -80,18 +76,16 @@ export default class extends Controller {
const usernameLower = this.model.username_lower;
let inboxName = i18n("user.messages.inbox");
let userMsgsCount = 0;
if (this.showUnread) {
userMsgsCount = ["new", "unread"].reduce((count, type) => {
return (
count +
this.pmTopicTrackingState.lookupCount(type, {
inboxFilter: "user",
})
);
}, userMsgsCount);
if (userMsgsCount && this.showCount) {
inboxName = htmlSafe(`${inboxName} (${userMsgsCount})`);
}
userMsgsCount = ["new", "unread"].reduce((count, type) => {
return (
count +
this.pmTopicTrackingState.lookupCount(type, {
inboxFilter: "user",
})
);
}, userMsgsCount);
if (userMsgsCount && this.showCount) {
inboxName = htmlSafe(`${inboxName} (${userMsgsCount})`);
}
const content = [
{
@ -104,19 +98,17 @@ export default class extends Controller {
this.model.groupsWithMessages.forEach(({ name }) => {
let groupName = name;
let groupMsgsCount = 0;
if (this.showUnread) {
groupMsgsCount = ["new", "unread"].reduce((count, type) => {
return (
count +
this.pmTopicTrackingState.lookupCount(type, {
inboxFilter: "group",
groupName: name,
})
);
}, groupMsgsCount);
if (groupMsgsCount && this.showCount) {
groupName = htmlSafe(`${name} (${groupMsgsCount})`);
}
groupMsgsCount = ["new", "unread"].reduce((count, type) => {
return (
count +
this.pmTopicTrackingState.lookupCount(type, {
inboxFilter: "group",
groupName: name,
})
);
}, groupMsgsCount);
if (groupMsgsCount && this.showCount) {
groupName = htmlSafe(`${name} (${groupMsgsCount})`);
}
content.push({
id: this.router.urlFor(

View file

@ -31,10 +31,6 @@ export default class MyMessagesSectionLink extends BaseSectionLink {
}

get totalCount() {
if (!this.currentUser?.use_experimental_sidebar_messages_count) {
return 0;
}

const newUserMsgs = this._lookupCount({ type: "new", inboxFilter: "user" });
const unreadUserMsgs = this._lookupCount({
type: "unread",
@ -70,10 +66,7 @@ export default class MyMessagesSectionLink extends BaseSectionLink {
}

get showCount() {
return (
this.currentUser?.use_experimental_sidebar_messages_count &&
this.currentUser?.sidebarShowCountOfNewItems
);
return this.currentUser.sidebarShowCountOfNewItems;
}

get badgeText() {

View file

@ -81,7 +81,6 @@ class CurrentUserSerializer < BasicUserSerializer
:can_localize_content?,
:effective_locale,
:use_reviewable_ui_refresh,
:use_experimental_sidebar_messages_count,
:can_see_ip

delegate :user_stat, to: :object, private: true
@ -355,10 +354,6 @@ class CurrentUserSerializer < BasicUserSerializer
scope.can_see_reviewable_ui_refresh?
end

def use_experimental_sidebar_messages_count
scope.user.in_any_groups?(SiteSetting.experimental_sidebar_messages_count_enabled_groups_map)
end

def include_use_reviewable_ui_refresh?
scope.can_see_review_queue?
end

View file

@ -2734,7 +2734,6 @@ en:
show_preview_for_form_templates: "Enable the preview for form templates feature"
lazy_load_categories_groups: "Lazy load category information only for users of these groups. This improves performance on sites with many categories."
experimental_auto_grid_images: "Automatically wraps images in [grid] tags when 3 or more images are uploaded in the composer."
experimental_sidebar_messages_count_enabled_groups: "Show an unread indicator or count next to the 'My messages' sidebar link, depending on the user's Navigation preferences"
page_loading_indicator: "Configure the loading indicator which appears during page navigations within Discourse. 'Spinner' is a full page indicator. 'Slider' shows a narrow bar at the top of the screen."
show_user_menu_avatars: "Show user avatars in the user menu"
about_page_hidden_groups: "Do not show members of specific groups on the /about page."

View file

@ -4134,10 +4134,3 @@ experimental:
client: true
type: group_list
default: ""
experimental_sidebar_messages_count_enabled_groups:
client: true
type: group_list
list_type: compact
default: ""
allow_any: false
refresh: true

View file

@ -0,0 +1,10 @@
# frozen_string_literal: true
class RemoveExperimentalSidebarMessagesCountEnabledGroupsSiteSetting < ActiveRecord::Migration[8.0]
def up
execute "DELETE FROM site_settings WHERE name = 'experimental_sidebar_messages_count_enabled_groups'"
end

def down
raise ActiveRecord::IrreversibleMigration
end
end

View file

@ -203,11 +203,6 @@ describe "Viewing sidebar", type: :system do
end
let(:user_private_messages_page) { PageObjects::Pages::UserPrivateMessages.new }

before do
SiteSetting.experimental_sidebar_messages_count_enabled_groups =
Group::AUTO_GROUPS[:trust_level_0]
end

it "should show new messages indicator" do
sign_in(admin)
visit("/")
@ -228,16 +223,6 @@ describe "Viewing sidebar", type: :system do
expect(sidebar).to have_my_messages_link_with_unread_icon
try_until_success { expect(sidebar).to have_my_messages_link_without_unread_icon }
end

context "when user does not belong to experimental_sidebar_messages_count_enabled_groups" do
before { SiteSetting.experimental_sidebar_messages_count_enabled_groups = "" }

it "does not show new messages indicator" do
sign_in(admin)
visit("/")
expect(sidebar).to have_my_messages_link_without_unread_icon
end
end
end
end


View file

@ -30,8 +30,6 @@ describe "Viewing user private messages", type: :system do
context "when user has unread messages" do
fab!(:pm_topic) { Fabricate(:private_message_topic, user: user2, recipient: user) }

before { SiteSetting.experimental_sidebar_messages_count_enabled_groups = "trust_level_0" }

it "shows unread icon in inbox dropdown trigger and dropdown" do
user_private_messages_page.visit(user)