* Store selector
* Footer
* Notifications
* Checkout Appearance
* Users list
* Forms
* Emails
* Pay Button
* Edit Dictionary
* Remove newlines, fix typos
* Forms
* Pull payments and payouts
* Various pages
* Use local docs link
* Fix
* Even more translations
* Fixes#6325
* Account pages
* Notifications
* Placeholders
* Various pages and components
* Add more
* Server: Make sending email optional when adding user
Closes#6158.
* Generate custom invite token and store it in user blob
Closes btcpayserver/app/#46.
* QR code for user invite
Closes#6157.
* Text fix
* Cleanups
* Add text entries for dictionary pages
* Wording: Keep Clone title consistent with Payment Request cloning
* Dictionaries: List used one first; badge for marking In use
* User: Add name and image URL
More personalization options, prerequisite for btcpayserver/app#3.
Additionally:
- Remove ambigious and read-only username from manage view.
- Improve email verification conditions and display.
- Greenfield: Update current user. Prerequisite for btcpayserver/app#13.
* Refactor UpdateCurrentUser
* Replace new columns by UserBlob
* Update email check and add test case for mailbox addresses
---------
Co-authored-by: nicolas.dorier <nicolas.dorier@gmail.com>
* Remove deprecated CSS options
Closes#5945.
* Greenfield: Add brandColor to store APIs
Closes#5946.
* Migrate file IDs to URLs
Closes#5953.
* Greenfield: Add CSS and logo URL to store settings API
Closes#5945.
* Add migration test
* Store and Server branding can reference file's via fileid:ID
* Add PaymentSoundUrl to Store API
---------
Co-authored-by: nicolas.dorier <nicolas.dorier@gmail.com>
* Admin overview of the stores on the instance
POC/Draft for #5674.
* Enable admin to access foreign stores
* Remove stores list link
* UI updates
* Grant admins guest access to foreign stores
* Optimize cookie auth handler
* Test fix
* Revert changes related to StoreRepository.FindStore with isAdmin
* Server Settings: Customize instance name and add contact URL
- The custom instance name would improve #5563
- Added contact URL closes#4806
* Fix custom logo display
* Users list: Cleanups
* Policies: Flip registration settings
* Policies: Add RequireUserApproval setting
* Add approval to user
* Require approval on login and for API key
* API handling
* AccountController cleanups
* Test fix
* Apply suggestions from code review
Co-authored-by: Nicolas Dorier <nicolas.dorier@gmail.com>
* Add missing imports
* Communicate login requirements to user on account creation
* Add login requirements to basic auth handler
* Cleanups and test fix
* Encapsulate approval logic in user service and log approval changes
* Send follow up "Account approved" email
Closes#5656.
* Add notification for admins
* Fix creating a user via the admin view
* Update list: Unify flags into status column, add approve action
* Adjust "Resend email" wording
* Incorporate feedback from code review
* Remove duplicate test server policy reset
---------
Co-authored-by: Nicolas Dorier <nicolas.dorier@gmail.com>
* Store Email Settings: Improve configuration
This works with the existing settings and provides better guidance about the different store email cases. Closes#5623.
* Split email and notification settings
* Editorconfig: Add space_before_self_closing setting
This was a difference between the way dotnet-format and Rider format code. See https://www.jetbrains.com/help/rider/EditorConfig_Index.html
* Editorconfig: Keep 4 spaces indentation for Swagger JSON files
They are all formatted that way, let's keep it like that.
* Apply dotnet-format, mostly white-space related changes
* Allow Users to be disabled/enabled
* rebrand to locked for api
* Update BTCPayServer/Views/UIAccount/Lockout.cshtml
Co-authored-by: d11n <mail@dennisreimann.de>
* fix docker compose and an uneeded check in api handler
* fix
* Add enabled user test
Co-authored-by: d11n <mail@dennisreimann.de>
Co-authored-by: Nicolas Dorier <nicolas.dorier@gmail.com>
* Enhanced Files action by modifying it to accept a list of SelectedFileIds
* Added checks to verify all files passed to the files action exist, Updated tests
* Enhanced Files action to accept an array of fileIds
* Removed redundant fileId list
Moves the `ViewsRazor` extension into Abstractions, so that it can be used by plugins.
Separated out of #2701, prerequisite for the LNbank plugin integration.
* wip
* add in storage system
* ui fixes
* fix settings ui
* Add Files Crud UI
* add titles
* link files to users
* add migration
* set blob to public
* remove base 64 read code
* fix file query model init
* move view model to own file
* fix local root path
* use datadir for local storage
* move to services
* add direct file url
* try fix tests
* remove magic string
* remove other magic strings
* show error message on unsupported provider
* fix asp net version
* redirect to storage settings if provider is not supported
* start writing tests
* fix tests
* fix test again
* add some more to the tests
* more tests
* try making local provider work on tests
* fix formfile
* fix small issue with returning deleted file
* check if returned data is null for deleted file
* validate azure Container name
* more state fixes
* change azure test trait
* add tmp file url generator
* fix tests
* small clean
* disable amazon and google
comment out unused code for now
comment out google/amazon