user-settings: Update tooltips for user and bot cases.

Updates the classes that are being set on the deactivate and
reactivate user buttons so that we can show better tooltips
when the user is a bot.
This commit is contained in:
Lauryn Menard 2025-03-13 22:32:50 +01:00 committed by Tim Abbott
parent a1a3ce8479
commit fb8e747a84
3 changed files with 25 additions and 5 deletions

View File

@ -124,7 +124,14 @@ export function update_view_on_deactivate(user_id: number, is_bot: boolean): voi
$button.prop("disabled", false);
$row.find("i.deactivated-user-icon").show();
$button.addClass("button-warning reactivate");
$button.removeClass("deactivate button-danger");
$button.removeClass("button-danger deactivate");
if (is_bot) {
$button.addClass("reactivate-bot-tooltip");
$button.removeClass("deactivate-bot-tooltip");
} else {
$button.addClass("reactivate-user-tooltip");
$button.removeClass("deactivate-user-tooltip");
}
$button.empty().append($("<i>").addClass(["fa", "fa-user-plus"]).attr("aria-hidden", "true"));
$row.removeClass("active-user");
$row.addClass("deactivated_user");
@ -151,6 +158,13 @@ export function update_view_on_reactivate(user_id: number, is_bot: boolean): voi
$row.find("i.deactivated-user-icon").hide();
$button.addClass("button-danger deactivate");
$button.removeClass("button-warning reactivate");
if (is_bot) {
$button.addClass("deactivate-bot-tooltip");
$button.removeClass("reactivate-bot-tooltip");
} else {
$button.addClass("deactivate-user-tooltip");
$button.removeClass("reactivate-user-tooltip");
}
$button.empty().append($("<i>").addClass(["fa", "fa-user-times"]).attr("aria-hidden", "true"));
$row.removeClass("deactivated_user");
$row.addClass("active-user");

View File

@ -507,12 +507,18 @@ export function initialize(): void {
target: ".user_row .actions button",
trigger: "mouseenter",
onShow(instance) {
if ($(instance.reference).hasClass("deactivate")) {
if ($(instance.reference).hasClass("deactivate-user-tooltip")) {
instance.setContent($t({defaultMessage: "Deactivate user"}));
return undefined;
} else if ($(instance.reference).hasClass("reactivate")) {
} else if ($(instance.reference).hasClass("reactivate-user-tooltip")) {
instance.setContent($t({defaultMessage: "Reactivate user"}));
return undefined;
} else if ($(instance.reference).hasClass("deactivate-bot-tooltip")) {
instance.setContent($t({defaultMessage: "Deactivate bot"}));
return undefined;
} else if ($(instance.reference).hasClass("reactivate-bot-tooltip")) {
instance.setContent($t({defaultMessage: "Reactivate bot"}));
return undefined;
}
return false;
},

View File

@ -46,12 +46,12 @@
</span>
{{#if is_active}}
<span {{#if (and is_bot cannot_deactivate)}}class="tippy-zulip-tooltip"{{/if}} {{#if (and is_bot cannot_deactivate)}}data-tippy-content="{{t 'This bot cannot be deactivated.'}}"{{/if}}>
<button class="button rounded small button-danger {{#unless (and is_bot cannot_deactivate) }}deactivate{{/unless}}" {{#if cannot_deactivate}}disabled="disabled"{{/if}}>
<button class="button rounded small button-danger deactivate {{#if is_bot}}deactivate-bot-tooltip{{else}}deactivate-user-tooltip{{/if}}" {{#if cannot_deactivate}}disabled="disabled"{{/if}}>
<i class="fa fa-user-times" aria-hidden="true"></i>
</button>
</span>
{{else}}
<button class="button rounded small reactivate button-warning">
<button class="button rounded small button-warning reactivate {{#if is_bot}}reactivate-bot-tooltip{{else}}reactivate-user-tooltip{{/if}}">
<i class="fa fa-user-plus" aria-hidden="true"></i>
</button>
{{/if}}