diff --git a/BTCPayServer.Tests/SeleniumTests.cs b/BTCPayServer.Tests/SeleniumTests.cs index 411cc0300..ab8147166 100644 --- a/BTCPayServer.Tests/SeleniumTests.cs +++ b/BTCPayServer.Tests/SeleniumTests.cs @@ -758,6 +758,7 @@ namespace BTCPayServer.Tests currencyInput.SendKeys("BTC"); s.Driver.FindElement(By.Id("SaveButton")).Click(); + s.Driver.FindElement(By.XPath($"//a[starts-with(@id, 'Edit-')]")).Click(); s.Driver.FindElement(By.Id("ViewPaymentRequest")).Click(); s.Driver.SwitchTo().Window(s.Driver.WindowHandles.Last()); Assert.Equal("Amount due", s.Driver.FindElement(By.CssSelector("[data-test='amount-due-title']")).Text); @@ -768,6 +769,7 @@ namespace BTCPayServer.Tests s.Driver.SwitchTo().Window(s.Driver.WindowHandles.First()); s.Driver.ExecuteJavaScript("document.getElementById('ExpiryDate').value = '2021-01-21T21:00:00.000Z'"); s.Driver.FindElement(By.Id("SaveButton")).Click(); + s.Driver.FindElement(By.XPath($"//a[starts-with(@id, 'Edit-')]")).Click(); s.Driver.SwitchTo().Window(s.Driver.WindowHandles.Last()); s.Driver.Navigate().Refresh(); Assert.Equal("Expired", s.Driver.WaitForElement(By.CssSelector("[data-test='status']")).Text); @@ -776,6 +778,7 @@ namespace BTCPayServer.Tests s.Driver.SwitchTo().Window(s.Driver.WindowHandles.First()); s.Driver.FindElement(By.Id("ClearExpiryDate")).Click(); s.Driver.FindElement(By.Id("SaveButton")).Click(); + s.Driver.FindElement(By.XPath($"//a[starts-with(@id, 'Edit-')]")).Click(); s.Driver.SwitchTo().Window(s.Driver.WindowHandles.Last()); s.Driver.Navigate().Refresh(); s.Driver.AssertElementNotFound(By.CssSelector("[data-test='status']")); diff --git a/BTCPayServer/Controllers/UIPaymentRequestController.cs b/BTCPayServer/Controllers/UIPaymentRequestController.cs index f0d10216f..33c76fe82 100644 --- a/BTCPayServer/Controllers/UIPaymentRequestController.cs +++ b/BTCPayServer/Controllers/UIPaymentRequestController.cs @@ -139,7 +139,8 @@ namespace BTCPayServer.Controllers blob.AllowCustomPaymentAmounts = viewModel.AllowCustomPaymentAmounts; data.SetBlob(blob); - if (string.IsNullOrEmpty(payReqId)) + var isNewPaymentRequest = string.IsNullOrEmpty(payReqId); + if (isNewPaymentRequest) { data.Created = DateTimeOffset.UtcNow; } @@ -147,8 +148,8 @@ namespace BTCPayServer.Controllers data = await _PaymentRequestRepository.CreateOrUpdatePaymentRequest(data); _EventAggregator.Publish(new PaymentRequestUpdated { Data = data, PaymentRequestId = data.Id, }); - TempData[WellKnownTempData.SuccessMessage] = "Saved"; - return RedirectToAction(nameof(EditPaymentRequest), new { storeId = store.Id, payReqId = data.Id }); + TempData[WellKnownTempData.SuccessMessage] = $"Payment request [{viewModel.Title}] {(isNewPaymentRequest ? "created" : "updated")} successfully"; + return RedirectToAction(nameof(GetPaymentRequests), new { storeId = store.Id, payReqId = data.Id }); } [HttpGet("{payReqId}")]