user_membership: Use banner template to render messages.

We now resort to using banner template instead
of trying to maintain our own banners
in the stream subscription and user group
membership templates.

Fixes: https://chat.zulip.org/#narrow/channel/9-issues/topic/.F0.9F.8E.AF.20User.20add.20success.20banner.20squashed/near/2229035.
Signed-off-by: apoorvapendse <apoorvavpendse@gmail.com>
This commit is contained in:
apoorvapendse
2025-07-25 20:29:44 +05:30
committed by Tim Abbott
parent c6a64b3c1d
commit 33e728e586
4 changed files with 71 additions and 73 deletions

View File

@@ -3,10 +3,10 @@ import $ from "jquery";
import assert from "minimalistic-assert";
import * as z from "zod/mini";
import render_membership_banner from "../templates/components/membership_banner.hbs";
import render_leave_user_group_modal from "../templates/confirm_dialog/confirm_unsubscribe_private_stream.hbs";
import render_user_group_member_list_entry from "../templates/stream_settings/stream_member_list_entry.hbs";
import render_user_group_members_table from "../templates/user_group_settings/user_group_members_table.hbs";
import render_user_group_membership_request_result from "../templates/user_group_settings/user_group_membership_request_result.hbs";
import render_user_group_subgroup_entry from "../templates/user_group_settings/user_group_subgroup_entry.hbs";
import * as add_group_members_pill from "./add_group_members_pill.ts";
@@ -242,10 +242,13 @@ function show_user_group_membership_request_error_result(error_message: string):
const $user_group_subscription_req_result_elem = $(
".user_group_subscription_request_result",
).expectOne();
const html = render_user_group_membership_request_result({
const rendered_error_message = render_membership_banner({
intent: "danger",
error_message,
});
scroll_util.get_content_element($user_group_subscription_req_result_elem).html(html);
scroll_util
.get_content_element($user_group_subscription_req_result_elem)
.html(rendered_error_message);
}
function show_user_group_membership_request_success_result({
@@ -298,7 +301,8 @@ function show_user_group_membership_request_success_result({
const $user_group_subscription_req_result_elem = $(
".user_group_subscription_request_result",
).expectOne();
const html = render_user_group_membership_request_result({
const rendered_success_banner = render_membership_banner({
intent: "success",
addition_success_messages,
newly_added_member_count,
already_added_member_count,
@@ -311,7 +315,9 @@ function show_user_group_membership_request_success_result({
ignored_deactivated_users_count,
ignored_deactivated_member_count,
});
scroll_util.get_content_element($user_group_subscription_req_result_elem).html(html);
scroll_util
.get_content_element($user_group_subscription_req_result_elem)
.html(rendered_success_banner);
}
export function edit_user_group_membership({

View File

@@ -0,0 +1,4 @@
{{#> banner .}}
{{> ../user_group_settings/user_group_membership_request_result .}}
{{/banner}}

View File

@@ -5,7 +5,7 @@
<h4 class="user_group_setting_subsection_title">
{{t "Add members" }}
</h4>
<div class="user_group_subscription_request_result"></div>
<div class="user_group_subscription_request_result banner-wrapper"></div>
<div class="member_list_settings">
<div class="member_list_add float-left">
{{> add_members_form .}}

View File

@@ -1,15 +1,6 @@
{{#if error_message}}
<div class="banner-wrapper">
<div class="banner banner-danger">
<span class="banner-label">
{{error_message}}
</span>
</div>
</div>
{{else}}
<div class="banner-wrapper">
<div class="banner banner-success">
<span class="banner-label">
{{#if (and (eq newly_added_member_count 0) (eq ignored_deactivated_member_count 0))}}
{{#if (and already_added_user_count already_added_subgroups_count)}}
{{t "All users and groups were already members."}}
@@ -65,7 +56,4 @@
{{/if}}
{{/if}}
{{/if}}
</span>
</div>
</div>
{{/if}}