Applies default subject and body text on editing to simplify email rule setup. Once the text is edited manually, the defaus aren't applied on switching the rule type.
Also documents the placeholders that can be used.
Came across this while testing things and the "Please fill all required fields before testing" message wasn't clear, because the required fields were not marked.
Co-authored-by: Andrew Camilleri <evilkukka@gmail.com>
* Checkout v2: Play sound when invoice is paid
Closes#5085.
* Refactoring: Use low-level audio API to play the sound
Allows to play the sound regardless of browser permissions.
* Add audio file detection
* Use model state for file upload errors
* Add default sound and customizing option
* Fix mp3 detection
* Add sounds
* Update defaults
* Add nfcread and error sounds
* Improve label wording
* Replace sound
---------
Co-authored-by: nicolas.dorier <nicolas.dorier@gmail.com>
* Add reporting feature
* Remove nodatime
* Add summaries
* work...
* Add chart title
* Fix error
* Allow to set hour in the field
* UI updates
* Fix fake data
* ViewDefinitions can be dynamic
* Add items sold
* Sticky table headers
* Update JS and remove jQuery usages
* JS click fix
* Handle tag all invoices for app
* fix dup row in items report
* Can cancel invoice request
* Add tests
* Fake data for items sold
* Rename Items to Products, improve navigation F5
* Use bordered table for summaries
---------
Co-authored-by: Dennis Reimann <mail@dennisreimann.de>
* Pluginify on chain wallet setup
This PR fixes a few logical points in the wallet setup flow to allow more extensive plugin flexibility; It also fixes an issue when building plugins that requires an Altcoin config profile. Here is an example showcasing the Liquid+ plugin using this to enforce that it is a hot wallet (a requirement it has) and that import to RPC is always set, and a new option that is used to configure the wallet further https://i.imgur.com/pDPQ73v.gif
* Update BTCPayServer/Controllers/UIStoresController.Onchain.cs
* update nbx
* Add What's New in v1.10.0
* Update BTCPayServer/Views/UIStores/Dashboard.cshtml
Co-authored-by: B <102448109+Bas02@users.noreply.github.com>
---------
Co-authored-by: B <102448109+Bas02@users.noreply.github.com>
* Store rule emails in HTML + Test rule emails
* Store rule emails in HTML + Test rule emails
* Update BTCPayServer/Controllers/UIStoresController.Email.cs
Thanks !
Co-authored-by: Andrew Camilleri <evilkukka@gmail.com>
* change in StoreEmails() to work properly with add commande
* CanSetupEmailServer() : Remove Bosy sendkeys that doesn't work with new HTML control
* Update test for new HTML control
* better command treatment
---------
Co-authored-by: nisaba <infos@nisaba.solutions>
Co-authored-by: Andrew Camilleri <evilkukka@gmail.com>
* Plugins can now build apps
* fix tests
* fixup
* pluginize existing apps
* Test fixes part 1
* Test fixes part 2
* Fix Crowdfund namespace
* Syntax
* More namespace fixes
* Markup
* Test fix
* upstream fixes
* Add plugin icon
* Fix nullable build warnings
* allow pre popualting app creation
* Fixes after merge
* Make link methods async
* Use AppData as parameter for ConfigureLink
* GetApps by AppType
* Use ConfigureLink on dashboard
* Rename method
* Add properties to indicate stats support
* Property updates
* Test fixes
* Clean up imports
* Fixes after merge
---------
Co-authored-by: Dennis Reimann <mail@dennisreimann.de>
* Dashboard: Fix app stats tiles
They broke with #4747, because they contain script blocks that are loaded asynchronuosly and need to get run once the chart data is added to the page.
* Refactor PoS dashboard component
* Collocate the component JS files in separate files
---------
Co-authored-by: nicolas.dorier <nicolas.dorier@gmail.com>
* Custom Forms
* Update BTCPayServer.Data/Migrations/20230125085242_AddForms.cs
* Cleanups
* Explain public form
* Add store branding
* Add form name to POS form
* add tests
* fix migration
* Minor cleanups
* Code improvements
* Add form validation
Closes#4317.
* Adapt form validation for Bootstrap 5
* update logic for forms
* pr changes
* Minor code cleanup
* Remove unused parameters
* Refactor Form data handling to avoid O(n3) issues
* Rename Hidden to Constant
* Pre-populate FormView from the query string params
* Fix test
---------
Co-authored-by: d11n <mail@dennisreimann.de>
Co-authored-by: nicolas.dorier <nicolas.dorier@gmail.com>
* Make NFC built int
* support checkout v2
* uninstall old plugin
* fix lnurl in unified checkout
* fix tests
* fix tests
* fix old checkout unified qr
* clean up and make nfc submission more sturdy
* support topup invoices for lnurlw
* fix test
* Payment URI fixes
* Fix LNURL exclusion cases
* UI updates
* Adapt test
---------
Co-authored-by: Dennis Reimann <mail@dennisreimann.de>
* Checkout v2: Configure countdown timer
This addresses feedback by @astupidmoose left [here](https://github.com/btcpayserver/btcpayserver/discussions/4308#discussioncomment-4438926): Make the countdown timer configurable with a minutes setting. This way the merchant has full control over when to display the timer. They could even set it to equal the invoice expiry, so that it is shown right from the beginning.
* Rename property and adjust wording
* Remove expiration percentage from Checkout v2
* Update some buttons
* Potential flaky test fix
* Dark theme: Fix primary accent color
* Pay Button: Remove unused clipboard dependency
The pay button uses the cope-to-clipboard.js
* Remove babel-polyfill
Browser-support should be good by now.
* Remove unused jquery-easing scripts
* Remove unused CSS