From f74785f758f802c6e57701e3aef0be29a29c7d8a Mon Sep 17 00:00:00 2001 From: Osama Sayegh Date: Thu, 25 Mar 2021 16:24:22 +0300 Subject: [PATCH] =?UTF-8?q?FIX:=20Composer=20save=20button=20should=20be?= =?UTF-8?q?=20=E2=9C=8F=20Save=20Edit=20when=20editing=20a=20PM=20post=20(?= =?UTF-8?q?#12521)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Meta topic: https://meta.discourse.org/t/edits-on-private-messages-should-generate-a-notification/182370/4?u=osama. --- .../discourse/app/controllers/composer.js | 4 ++-- .../tests/acceptance/composer-test.js | 20 +++++++++++++++++++ 2 files changed, 22 insertions(+), 2 deletions(-) diff --git a/app/assets/javascripts/discourse/app/controllers/composer.js b/app/assets/javascripts/discourse/app/controllers/composer.js index f50deaaeb0a..967dbaaeb03 100644 --- a/app/assets/javascripts/discourse/app/controllers/composer.js +++ b/app/assets/javascripts/discourse/app/controllers/composer.js @@ -231,7 +231,7 @@ export default Controller.extend({ if (isWhispering) { return "far-eye-slash"; } - if (privateMessage) { + if (privateMessage && modelAction === Composer.REPLY) { return "envelope"; } @@ -249,7 +249,7 @@ export default Controller.extend({ return "composer.overwrite_edit"; } else if (isWhispering) { return "composer.create_whisper"; - } else if (privateMessage) { + } else if (privateMessage && modelAction === Composer.REPLY) { return "composer.create_pm"; } diff --git a/app/assets/javascripts/discourse/tests/acceptance/composer-test.js b/app/assets/javascripts/discourse/tests/acceptance/composer-test.js index 6476fb39f24..7081f8e7e8b 100644 --- a/app/assets/javascripts/discourse/tests/acceptance/composer-test.js +++ b/app/assets/javascripts/discourse/tests/acceptance/composer-test.js @@ -23,6 +23,9 @@ acceptance("Composer", function (needs) { server.post("/uploads/lookup-urls", () => { return helper.response([]); }); + server.get("/posts/419", () => { + return helper.response({ id: 419 }); + }); }); skip("Tests the Composer controls", async function (assert) { @@ -816,6 +819,23 @@ acceptance("Composer", function (needs) { ); }); + test("edit button when editing a post in a PM", async function (assert) { + await visit("/t/34"); + await click("article#post_3 button.show-more-actions"); + await click("article#post_3 button.edit"); + + assert.equal( + queryAll(".save-or-cancel button.create").text().trim(), + I18n.t("composer.save_edit"), + "save button says Save Edit" + ); + assert.ok( + queryAll(".save-or-cancel button.create svg.d-icon-pencil-alt").length === + 1, + "save button has pencil icon" + ); + }); + test("Image resizing buttons", async function (assert) { await visit("/"); await click("#create-topic");