UX: Fix HTML showing in delete user button (#31201)

Also rewords it to clarify the action. And ensures both `delete` buttons
get the `btn-danger` class.
This commit is contained in:
Penar Musaraj 2025-02-05 16:28:10 -05:00 committed by GitHub
parent 7ec9885454
commit b9d4c57f07
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
5 changed files with 11 additions and 11 deletions

View File

@ -451,7 +451,7 @@ export default class AdminUserIndexController extends Controller {
buttons: [
{
label: i18n("admin.user.delete_dont_block"),
class: "btn-primary",
class: "btn-danger delete-dont-block",
action: () => {
return performDestroy(false);
},
@ -459,7 +459,7 @@ export default class AdminUserIndexController extends Controller {
{
icon: "triangle-exclamation",
label: i18n("admin.user.delete_and_block"),
class: "btn-danger",
class: "btn-danger delete-and-block",
action: () => {
return performDestroy(true);
},

View File

@ -257,7 +257,7 @@ export default class UserController extends Controller {
buttons: [
{
label: i18n("admin.user.delete_dont_block"),
class: "btn-primary",
class: "btn-danger delete-dont-block",
action: () => {
return performDestroy(false);
},
@ -265,7 +265,7 @@ export default class UserController extends Controller {
{
icon: "triangle-exclamation",
label: i18n("admin.user.delete_and_block"),
class: "btn-danger",
class: "btn-danger delete-and-block",
action: () => {
return performDestroy(true);
},

View File

@ -289,7 +289,7 @@ acceptance("Admin - User Index", function (needs) {
.dom("#dialog-title")
.hasText(i18n("admin.user.delete_confirm_title"), "dialog has a title");
await click(".dialog-footer .btn-primary");
await click(".dialog-footer .delete-dont-block");
assert.false(deleteAndBlock, "user does not get blocked");
});
@ -297,8 +297,8 @@ acceptance("Admin - User Index", function (needs) {
test("delete user - delete and block works as expected", async function (assert) {
await visit("/admin/users/5/user5");
await click(".btn-user-delete");
await click(".dialog-footer .btn-danger");
await click(".dialog-footer .delete-and-block");
assert.true(deleteAndBlock, "user does not get blocked");
assert.true(deleteAndBlock, "user does get blocked");
});
});

View File

@ -170,7 +170,7 @@ acceptance("User Profile - Summary - Admin", function (needs) {
test("Delete only action", async function (assert) {
await visit("/u/charlie/summary");
await click(".btn-delete-user");
await click(".dialog-footer .btn-primary");
await click(".dialog-footer .delete-dont-block");
assert.false(deleteAndBlock, "first button does not block user");
});
@ -183,7 +183,7 @@ acceptance("User Profile - Summary - Admin", function (needs) {
.dom("#dialog-title")
.hasText(i18n("admin.user.delete_confirm_title"), "dialog has a title");
await click(".dialog-footer .btn-danger");
await click(".dialog-footer .delete-and-block");
assert.true(deleteAndBlock, "second button also block user");
});
});

View File

@ -7047,8 +7047,8 @@ en:
other: "Can't delete all posts because the user has more than %{count} posts. (delete_all_posts_max)"
delete_confirm_title: "Are you sure you want to delete this user? This is permanent!"
delete_confirm: "It is generally preferable to anonymize users rather than deleting them, to avoid removing content from existing discussions."
delete_and_block: "Delete and <b>block</b> this email and IP address"
delete_dont_block: "Delete only"
delete_and_block: "Delete user and block their email and IP address"
delete_dont_block: "Delete user"
deleting_user: "Deleting user…"
deleted: "The user was deleted."
delete_failed: "There was an error deleting that user. Make sure all posts are deleted before trying to delete the user."