Commit Graph

2080 Commits

Author SHA1 Message Date
Umar Bolatov
c9f0988b95
Handle possible error when bumping fee (#3608)
fix #3600
2022-04-11 17:53:10 +09:00
d11n
cd9a52706c
Use the store's default currency when creating entities (#3585)
* Use default currency for new pull payments

Closes #3582.

* Pull payment: Improve create form

* Use default currency for new invoices

Closes  #3581.

* Clean up old invoice form code

* Use default currency for new payment requests

* Test fixes
2022-04-11 17:50:30 +09:00
d11n
e5174b4a29
Lightning: Link to services directly (#3593)
* Allow to access fake LN services in dev mode

* Link directly to Lightning services

Closes #3552.

* Fix typo
2022-04-11 17:49:28 +09:00
Umar Bolatov
8feb60c30d
Add ability to set default payment method for pay button (#3606)
* Add ability to set default payment method for pay button

close #3604

* Add "#nullable enable" to UIStoresController

* Add PaymentMethodOptionViewModel

* Add explicit "Use the store’s default" option
2022-04-11 17:48:12 +09:00
Kukks
b0f00773d6
fix issues around local btcpay client and no request obj 2022-03-30 15:04:51 +02:00
Kukks
77da261fea
Allow plugins to extend swagger docs and fix pull payment test 2022-03-29 20:29:27 +02:00
Kukks
e23c9ee608
Add missing policies in api key UI 2022-03-29 20:12:02 +02:00
Kukks
dca986eb2e Add Greenfield Store Email API 2022-03-26 21:46:40 +00:00
Kukks
5ef41294e4
Optimize github plugin fetching 2022-03-23 15:03:39 +00:00
d11n
23049439c0
API: Add description hash to CreateLightningInvoiceRequest (#3559)
Co-authored-by: Andrew Camilleri <evilkukka@gmail.com>
2022-03-17 10:15:27 +01:00
Wouter Samaey
c36b0c16b0
New API endpoint: Send email using store SMTP (#3181)
Co-authored-by: Kukks <evilkukka@gmail.com>
2022-03-11 10:17:40 +01:00
Umar Bolatov
d372cbad74 Fix null reference error when "destinations" field is not specified or empty when creating a new wallet transaction
fix #3537
2022-03-08 11:14:34 +01:00
Dennis Reimann
749c22a0c3 Refactoring: Extract HttpRequest extensions 2022-03-08 08:17:39 +00:00
Dennis Reimann
6867774627 Refactoring: Extract StringExtensions 2022-03-08 08:17:39 +00:00
Dennis Reimann
03e49ea2bf Allow access to global invoices list
The recent changes in 19eea3a615 prevent it to access a global/unfiltered list of invoices across all stores. This removes the fallback to the current store, which brings the global list back at `/invoices`.
2022-03-02 11:00:25 +01:00
Kukks
30d0410b49 fix shopify settings 2022-03-01 09:19:28 +01:00
Kukks
eb2a887f77 Fix missing store in export for invoices
fixes #3505
2022-03-01 09:18:46 +01:00
Dennis Reimann
e47c2aa24d Fix redirect 2022-03-01 09:18:23 +01:00
Dennis Reimann
3eb9fdca6a Syntax improvements 2022-03-01 09:18:23 +01:00
Dennis Reimann
4abc6eb387 Refactoring: Allow GreenfieldExtensions to be used by plugins 2022-03-01 09:14:51 +01:00
Dennis Reimann
4a05f16050 Refactoring: Move WellKnownTempData into Abstractions.Constants
This allows plugins to reuse the status message mechanism.
2022-02-21 16:39:08 +01:00
Kukks
248be11e4d fix local client http accessor overrider 2022-02-21 11:48:40 +01:00
Nicolas Dorier
19eea3a615
Refactor how we get storeids list in invoice filter (#3483) 2022-02-21 14:53:48 +09:00
nicolas.dorier
7b81b9786d
Fix LNUrl comment truncating 2022-02-21 13:47:00 +09:00
nicolas.dorier
292d302a3d
Allow only 2k chars in LNURL comments 2022-02-21 13:27:02 +09:00
nicolas.dorier
557594e34d
Test LNUrl Pay payment method information, add doc 2022-02-21 13:22:17 +09:00
Umar Bolatov
a3b748ffe3
Remove payment methods not currently configured when creating invoice (#3394)
* Add error message when wallet is not configured

* Adjust payment methods based on available ones

* Disable "Create invoice" page if there is an error

* Add test

* update HasErrorMessage

* Add method for checking if payment methods are available

* small pr fixes

Co-authored-by: Kukks <evilkukka@gmail.com>
2022-02-17 18:22:09 +09:00
Umar Bolatov
9a3a7a3444
Add pull payment grouping options (#3177)
* Add grouping by payment methods

* Add filtering by pull payment state

* Hide "Archive" button for archived pull payments

* Don't show payment methods bar if there is only one

* Add "All" payment method option

* Remove filtering by payment method

* Update state queries to not run on the client

* Add filtering by future pull payments
2022-02-17 18:13:28 +09:00
d11n
5c8ca15ee2
Redesign Wallet UI (#3441)
* Update wallet navigation

* Find matching text color for label bg color

* Cleanup

* Extract WalletNav component

* Move PSBT link to Send and Rescan link to Settings

* Update transactions view

* Test fixes

* Adapt invoices list actions

* Show invoice actions only if there are any invoices

* Link wallet name and balance to tranactions list

* Move wallet related actions from list to settings

* Fix main menu z-index

Needs a value between fixed and the offcanvas backdrop, see https://getbootstrap.com/docs/5.1/layout/z-index/

* Update receive and send views
2022-02-17 18:07:41 +09:00
d11n
cd3807a3d8
Lightning payment info and fee handling (#3454)
* Lightning payment info and fee handling

Builds on the additions in btcpayserver/BTCPayServer.Lightning#59 and btcpayserver/BTCPayServer.Lightning#61.

Adds payment information (total amount and fees) to the API response and allows to set an optional maximum fee percentage when paying.

* Add max fee flat
2022-02-17 18:01:39 +09:00
Nicolas Dorier
6efeb60c41
Fix the PSBT signing flow (#3465) 2022-02-17 17:58:56 +09:00
Wouter Samaey
288fbda54f
New API endpoint: Find 1 user by ID or by email, or list all users. (#3176)
Co-authored-by: Kukks <evilkukka@gmail.com>
2022-02-15 16:19:52 +01:00
Kukks
1c5cf29540 Greenfield: Invoices Payment Methods: Additional Data
closes #3154
2022-02-15 12:23:54 +01:00
Nicolas Dorier
1d593df5af
Bump lightning lib (#3453)
* Bump lightning lib

* Fix endianness of description hash text
2022-02-14 20:33:27 +09:00
d11n
05ab43f309
Redirect to transactions list after wallet creation (#3451)
Closes #3450.
2022-02-14 17:09:57 +09:00
Umar Bolatov
f06199230c
Add ability to add description to pull payment (#3363)
* Add ability to add description to pull payment

close #2625

* Add API support

* Remove 'Model.Description != "<br>"'
2022-02-10 14:54:00 +09:00
Andrew Camilleri
da9a6b835a
Greenfield: Store Users (#3425)
* Greenfield: Store Users

* fixups

Co-authored-by: nicolas.dorier <nicolas.dorier@gmail.com>
2022-02-10 14:51:10 +09:00
nicolas.dorier
0afc2cd2cb
Add NetworkProvider.DefaultNetwork 2022-02-10 12:43:26 +09:00
Nicolas Dorier
300d84c5d8
[UX/UI] Add CPFP (#3395)
* Add CPFP

* Sign PSBT should go back to the initial page
2022-02-10 12:24:28 +09:00
d11n
99c4ebe046
Setup guide: Link wallet setup always to BTC (#3442) 2022-02-10 12:17:15 +09:00
d11n
699231fd92
Fix payment request archival actions (#3443) 2022-02-09 23:37:15 +09:00
David Trapp
147ccd6c96
Ensure compresed public key is used for SIN generation even if uncompressed key was provided (fix #3432) (#3433) 2022-02-08 11:24:58 +09:00
Nicolas Dorier
c8b9906ef3
After login, redirect user to the main page even if root app configured (#3429) 2022-02-07 21:18:22 +09:00
Umar Bolatov
ab8d116f11
Fix null reference exception when going to LN node settings before it's been set-up (#3410)
* Fix null reference exception when going to LN node settings before it's been set-up

* Fix-up remaining null reference errors

* Update error message
2022-02-06 12:19:42 +09:00
nicolas.dorier
93b52fbdb3
Redirect on 403 page rather than crashing if permission missing 2022-02-02 20:24:22 +09:00
Andrew Camilleri
c07fcc171c
Fix Plugin Local Client authorization when user is provided (#3401)
* Fix Plugin Local Client authorization when user is provided

* 1337 hax
2022-02-02 20:09:08 +09:00
d11n
ff9a1a1f55
Delete user preferences cookie on logout (#3379)
I think it is a good practice to remove those settings on logout. Otherwise they get persisted across multiple accounts, which might not be desired.
2022-02-01 10:42:31 +09:00
Dennis Reimann
52fe374aaa Fix new guest store redirect after login
Fixes #3373.
2022-01-28 09:59:40 +01:00
nicolas.dorier
6e864c2631
Fix error message when trying to remove last admin 2022-01-28 17:09:54 +09:00
Kukks
5c6a0f22c0 fix ln address
fixes #3367
2022-01-27 17:17:20 +01:00
d11n
8ceda3eab1
Fixes (#3356)
* Improve wording

* Fix redirect action
2022-01-26 14:57:35 +09:00
dstrukt
cc1233e8d5
Adjust Pay Button (#3354)
* updates padding

* padding adjustments

* updates

* Redirect to paybutton enable page when disabling

* Fix test

* Fix test

Co-authored-by: nicolas.dorier <nicolas.dorier@gmail.com>
Co-authored-by: Dennis Reimann <mail@dennisreimann.de>
2022-01-26 14:55:48 +09:00
Nicolas Dorier
fe9de98dd1
Merge pull request #3337 from dennisreimann/merge-general-payment
Store: Combine General and Payment settings
2022-01-25 20:26:45 +09:00
Kukks
ecde91ff25 Plugins: Support plugin git remote with multiple versions of same plugins 2022-01-25 11:15:19 +01:00
Dennis Reimann
10adb23e71
Remove obsolete store hints 2022-01-25 06:57:55 +01:00
Dennis Reimann
c2fc099439
Create store: Add default currency and rate provider fields 2022-01-25 06:57:55 +01:00
Dennis Reimann
723a38da68
Store: Combine General and Payment settings 2022-01-25 06:57:55 +01:00
Andrew Camilleri
e917796fce
Set new LN defaults (#3325)
fixes #3324
2022-01-25 12:17:39 +09:00
Nicolas Dorier
a8adac9c5a
Rename LNUrlAuthController -> UILNAuthController (#3352) 2022-01-25 11:51:14 +09:00
Nicolas Dorier
090da6cfb6
Add configurable BOLT11Expiration for refunds (Fix #3281) (#3341)
* Add configurable BOLT11Expiration for refunds (Fix #3281)

* Add BOLT11Expiration configuration in Payment
2022-01-24 20:17:09 +09:00
Nicolas Dorier
e23ddf118e
Add warning about the tradeoff the paybutton (#3340)
* Add warning about the security tradeoff of the paybutton

* Update BTCPayServer/Views/UIStores/PayButtonEnable.cshtml

Co-authored-by: d11n <mail@dennisreimann.de>

* Move message in column

Co-authored-by: d11n <mail@dennisreimann.de>
2022-01-24 20:00:42 +09:00
nicolas.dorier
692b57a1ad
Fix the notification dropdown not updating without page refresh 2022-01-23 15:49:43 +09:00
d11n
c419ad68bb
Remove redundant payment methods from store settings (#3323)
* Add enabled toggle to wallet settings view

* Add enabled toggle to Lightning settings view

* Remove redundant payment methods from store settings

* Rename Payment Methods to Payments

* Adapt tests

* Fix invoice state toggle on details page

* Add spacing on Lightning sett8ings page
2022-01-19 20:58:02 +09:00
d11n
51c486c15a
Add Lightning page with services (#3308)
* Add Lightning page with services

* Adapt other services pages

* Display Lightning services only for internal node
2022-01-19 11:52:05 +09:00
d11n
1d3f74c8bb
Home sweet home (#3313)
* Link to store home, show home only if there is no store

* Handle store guest case

* Apply correct policies to nav items
2022-01-18 10:20:59 +09:00
Nicolas Dorier
14da3023d8
Merge pull request #3310 from NicolasDorier/niceurl
Use nicer urls, part2 (Fix #921)
2022-01-17 11:41:20 +09:00
nicolas.dorier
b9fdd54538
Use nicer urls, part2 (Fix #921) 2022-01-15 14:54:06 +09:00
Kukks
7243aec213 Support LNURL Auth 2022-01-14 13:26:30 +01:00
nicolas.dorier
50d4b55f73
Warning if not using 'simple using' 2022-01-14 17:50:29 +09:00
nicolas.dorier
c6a7e90c1a
Warning if not using 'is not null' 2022-01-14 17:48:15 +09:00
nicolas.dorier
23a96c07ae
Rename GreenField -> Greenfield 2022-01-14 13:46:04 +09:00
nicolas.dorier
7a787fc945
Rename UI controllers 2022-01-14 13:46:03 +09:00
nicolas.dorier
ce43de0c57
Rename greenfield controllers 2022-01-14 12:21:06 +09:00
nicolas.dorier
eaf47d3739
Rename controllers Bitpay controllers 2022-01-14 12:21:06 +09:00
Nicolas Dorier
5eebdb6774
Use nicer urls (Fix #921) (#3304) 2022-01-14 12:20:50 +09:00
d11n
51db1593d6
Remove stores list (#3300) 2022-01-14 11:59:27 +09:00
nicolas.dorier
223c71ce8b
Fix tests 2022-01-13 23:50:33 +09:00
nicolas.dorier
f76ce54109
Fix tests 2022-01-13 18:14:27 +09:00
d11n
69d1acc797
Empty states: Setup guide for store and wallet (#3255)
* Store Selector: Create first store button

* Add setup guide to homepage

* Policy update for stores list

* Fix test

* Initial create store button as primary

* Add notifications list to homepage

* Remove back to list from store create view

* Adapt content padding on desktop

* Add store home view with setup guide

* Fix active page nav highlighting

* Test fix

* Remove What's Next section

* Rename Store Home to Dashboard

* Fix Lightning setup link

* Add tests for store setup guide

* Update BTCPayServer/Views/Home/Home.cshtml

Co-authored-by: Pavlenex <pavle@pavle.org>

* Update BTCPayServer/Views/Stores/Dashboard.cshtml

Co-authored-by: Pavlenex <pavle@pavle.org>

* Remove setup guide on global homepage

* Remove Shopify setup link from nav

* Fix content container max-width on desktop

Co-authored-by: Pavlenex <pavle@pavle.org>
2022-01-13 17:08:15 +09:00
Nicolas Dorier
708f8b49df
[Greenfield] Let non-admin update LN payment method with internal node if it is unchanged (Fix #2860) (#3288) 2022-01-11 23:38:05 +09:00
Nicolas Dorier
5bbaa48b49
Fix change state broken in the UI and update invoice's status in payment request to new convention (Fix #3265) (#3286) 2022-01-11 21:49:56 +09:00
Nicolas Dorier
7444bd06e4
[Greenfield] Fix create/update payment requests expiry field and allow null currency field (Fix #3222) (#3284) 2022-01-11 18:42:44 +09:00
Nicolas Dorier
0017e687db
A store's guest should be able to manage lightning invoices (Fix #3212) (#3283) 2022-01-11 17:22:10 +09:00
dstrukt
4b941a5145
Update Invoice Views (#3264)
* updates create invoice

* updates invoice list

* formats

* updates row

* updates

* Improve invoice list markup and fix mass action form

* Responsive invoice table

* Improve spacing on invoice detail view

* Improve archive message

* Responsive status change partial

* Add test case for mass archiving

* Add mass unarchiving

Closes #3270.

Co-authored-by: Nicolas Dorier <nicolas.dorier@gmail.com>
Co-authored-by: Dennis Reimann <mail@dennisreimann.de>
2022-01-11 17:14:34 +09:00
nicolas.dorier
6999abe1ca
Rename WebhookNotificationManager -> WebhookSender 2022-01-11 13:21:38 +09:00
nicolas.dorier
c6df43363f
Extract MultiProcessingQueue from WebhookNotificationManager 2022-01-11 13:21:38 +09:00
nicolas.dorier
e164b1f169
The PayButton should select the default currency of the store as default 2022-01-10 20:37:36 +09:00
nicolas.dorier
03af471f65
Improve error message for create store wallet transaction (Fix #3256) 2022-01-10 11:59:13 +09:00
nicolas.dorier
88bc1c64d2
Fix tests 2022-01-07 21:47:19 +09:00
nicolas.dorier
81c1cc6728
Add rockstar friendly error 403 2022-01-07 19:46:38 +09:00
nicolas.dorier
fc91077430
A store's guest should be able to see invoice information 2022-01-07 18:10:31 +09:00
Nicolas Dorier
04b8eafacb
Run dotnet format (#3244) 2021-12-31 16:59:02 +09:00
d11n
e2d0b7c5f7
Store centric UI: Part 3 (#3224)
* Set store context in cookie

* Fix page id usages in view

* Move Pay Button to nav

* Move integrations to plugins nav

* Store switch links to wallet if present

* Test fixes

* Nav fixes

* Fix altcoin view

* Main nav updates

* Wallet setttings nav update

* Move storeId cookie fallback to cookie auth handler

* View fixes

* Test fixes

* Fix profile check

* Rename integrations nav extension point to store-integrations-nav-list

* Allow strings for Active page/category for plugins

* Make invoice list filter based on store context

* Do not set context if we are running authorizer through tag helper

* Fix test and unfiltered invoices

* Add permission helper for wallet links

* Add sanity checks for payment requests and invoices

* Store context in home controller

* Fix PayjoinViaUI test

* Store context for notifications

* Minor UI improvements

* Store context for userstores and vault controller

* Bring back integrations page

* Rename notifications nav pages file

* Fix user stores controller policies

* Controller policy fixes from code review

* CookieAuthHandler: Simplify CanViewInvoices case

* Revert "Controller policy fixes from code review"

This reverts commit 97e8b8379c.

* Simplify LayoutSimple

* Fix CanViewInvoices condition

Co-authored-by: Kukks <evilkukka@gmail.com>
2021-12-31 16:36:38 +09:00
Nicolas Dorier
ed5b159fb6
Use ArgumentNullException.ThrowIfNull everywhere (#3239) 2021-12-28 17:39:54 +09:00
nicolas.dorier
c0e9f91bdc
Fix warnings 2021-12-27 13:58:18 +09:00
Nicolas Dorier
02419dcdd1
Migrate to .net6.0 (#3198) 2021-12-27 13:15:43 +09:00
Andrew Camilleri
48ac996d77
Sign in with other device (quick mobile login) (#2504)
Co-authored-by: Dennis Reimann <mail@dennisreimann.de>
Co-authored-by: Nicolas Dorier <nicolas.dorier@gmail.com>
2021-12-24 09:27:00 +01:00
Wouter Samaey
82b4debcac
Renamed Payment Request "Created" field to "CreatedTime" for consistancy since we already have a breaking change (#3230) 2021-12-23 14:48:10 +01:00
Andrew Camilleri
5f5f71bf37
Normalize greenfield responses for 404s (#3220) 2021-12-23 13:32:08 +09:00
Wouter Samaey
f63a9ed1a0 Added field "StoreId" to a Payment Request in Greenfield 2021-12-22 16:17:35 +01:00
Dennis Reimann
8e5a9251d6 Address feedback from code review
Thanks @kukks
2021-12-21 09:24:09 +01:00
Dennis Reimann
3a59e2a5c4 Cache resolved store items in HTTP context 2021-12-21 09:24:09 +01:00
Dennis Reimann
a4fa61e5f6 Authorize invoice refund route
The customer gets a pull payment route to initiate the refund, so this one is only for merchants and needs to be authorized.
2021-12-21 09:24:09 +01:00
Wouter Samaey
f4bde164bf
Changed API policy for calculating feeRate (#3217) 2021-12-20 11:16:23 +01:00
Nicolas Dorier
163d1a195d
Fix: DateTime passed to bitpay API weren't assumed UTC, remove DateTime.Now references (#3206) 2021-12-17 15:31:06 +09:00
Wouter Samaey
6de4f6a3ac
Mention the missing API permission in the response of a Greenfield request (#3195)
* Mention the missing API permission in the response header or body

* Fixes + Added a unit test. 1 TODO remains.

* Added MissingPermissionDescription to the error

* Update BTCPayServer.Tests/GreenfieldAPITests.cs

Co-authored-by: Nicolas Dorier <nicolas.dorier@gmail.com>

* Fix tests

* [GreenField]: Make sure we are sending fully typed errors

Co-authored-by: Nicolas Dorier <nicolas.dorier@gmail.com>
2021-12-16 23:04:06 +09:00
nicolas.dorier
4f7eeea14e
Greenfield: Improve error message, do not use internal lightning node on store's lightning API 2021-12-16 14:27:34 +09:00
Nicolas Dorier
ac099aa513
Change implementation of the Smtp server (#3202)
* Change implementation of the Smtp server

* Update BTCPayServer/Services/Mails/EmailSettings.cs

Co-authored-by: Andrew Camilleri <evilkukka@gmail.com>

Co-authored-by: Andrew Camilleri <evilkukka@gmail.com>
2021-12-15 21:30:46 +09:00
d11n
cf78987fab
Fix LN Node availability check (#3189) 2021-12-11 14:31:25 +09:00
d11n
f8e6b51e9d
Store-centric UI (#3091)
* Update layout structure and header

* Implement store selector

* Simplify homepage

* Update layout

* Use dropdown for store selector

* Hide global nav in store context

* Horizontal section nav

* Remove outer section and container from content views

* Update nav

* Set store context for invoice and payment request lists

* Test fixes

* Persist menu collapse state on client-side

* MainNav as view component

* Update app routes to incorporate store context

* Test fixes

* Display ticker for altcoins build only

* Plugins nav

* Incorporate category for active page as well

* Update invoice icon

* Add apps list to nav

* Add store context to app type controllers

* Incorporate id for active page as well

* Test fixes

* AppsController cleanup

* Nav: Display only apps for the current store

* Remove leftover from merge

* Nav styles optimization

* Left-align content container

* Increase sidebar padding on desktop

* Use min-width for store selector menu

* Store settings nav update

* Update app and payment request routes

* Test fixes

* Refactor MainNav component to use StoresController

* Set store context for invoice actions

* Cleanups

* Remove CurrentStore checks

The response will be "Access denied" in case the CookieAuthorizationHandler cannot resolve the store.

* Remove unnecessary store context setters

* Test fix
2021-12-11 12:32:23 +09:00
d11n
2b1436e303
Fix build warning in Invoice Testing Controller (#3191) 2021-12-10 12:31:04 +01:00
Andrew Camilleri
fd75008499
Allow pull payments for store guests (#3128) 2021-12-08 00:40:24 +09:00
Wouter Samaey
c679654ada
Send block reward to a random address instead of the invoice address. Default mine 1 block. (#3164)
* Send block reward to a random address instead of the invoice address. Default mine 1 block.

* Using a random address for the block reward
2021-11-29 19:44:56 +09:00
Umar Bolatov
26f3cffe5c
Fix possible null reference exception when creating a pull payment (#3162)
Co-authored-by: Andrew Camilleri <evilkukka@gmail.com>
2021-11-29 07:26:30 +01:00
Wouter Samaey
8f0d82d219
Cheat mode to mine blocks (#3163) 2021-11-29 07:23:56 +01:00
Samuel Adams
ec68d2a0e6
Remove Confirmed state in UI (#3090)
* Remove Confirmed state in UI

Closes #1789.

* Add infobox & improve refund tooltip

* Update BTCPayServer/Views/Invoice/ListInvoices.cshtml

Add @dennisreimann suggestion

Co-authored-by: d11n <mail@dennisreimann.de>

* Add "don't show again" button

Adds a "Don't Show Again" button to the infobox. Also a bugfix that was preventing the new status from showing in the invoice details page.

* Add User blob and move invoice status notice to it

Co-authored-by: d11n <mail@dennisreimann.de>
Co-authored-by: Kukks <evilkukka@gmail.com>
2021-11-26 23:13:41 +09:00
Samuel Adams
9b730e784f
Add pagination for API GetNotifications (#3145) 2021-11-26 11:55:59 +09:00
Umar Bolatov
4fe4cdb7bf
Redirect to payment requests page instead of edit page on archive action (#3142)
* Redirect to payment requests page instead of edit page on archive action

* Remove unused "using" directive
2021-11-24 20:27:56 +09:00
nicolas.dorier
35aad4ebf9
Remove Logs static singletons 2021-11-23 13:55:34 +09:00
Nicolas Dorier
c01fae5fcd
Bump LND (#3130) 2021-11-20 22:41:35 +09:00
Dennis Reimann
cb1dbe7662 Improve invoice warning for no payment method configured
Closes #3085.
2021-11-18 10:05:37 +01:00
Dennis Reimann
6813a6ea63 Refactoring: Invoice UI Controller cleanups
Simple and IDE proposed changes and cleanups I came across while working on #3092.
2021-11-18 10:02:24 +01:00
nicolas.dorier
8d6c5dcd65
Remove useless code 2021-11-16 21:02:25 +09:00
nicolas.dorier
2f5f397d33
Remove taproot activation code 2021-11-15 23:03:10 +09:00
Kukks
31cf2671f5 Optimize admin user list 2021-11-15 10:28:45 +01:00
Umar Bolatov
d5c38ef336
Add crypto code for invoice and pull payment payout API response (#3099)
* Add "cryptoCode" for invoice payment method API endpoint response

* Add "cryptoCode" for pull payment payout API endpoint response

* Add "#nullable enable" to GreenFieldInvoiceController

* Add "#nullable enable" to GreenfieldPullPaymentController
2021-11-15 14:25:59 +09:00
nicolas.dorier
03d2b6eabe
Checkout page of 0 amount invoices shouldn't crash, but 404 2021-11-15 13:51:36 +09:00
Samuel Adams
a7ef9c7c27 Fix payout/pull payment crash when no payment method bug
Fixes #3084.
2021-11-12 20:09:32 -05:00
d11n
08f57558da
Fake payment fixes (#3058)
Fixes and various minor improvements for the fake payment form.
2021-11-11 18:31:15 +09:00
d11n
28694859c9
Wallet settings merge (#3072)
* Wallet settings merge

Merges both wallet settings screen from the wallets and the store section. Closes #2626.

* Improve wallet transactions view

* Remove unnecessary row/col construct
2021-11-11 14:30:19 +09:00
Samuel Adams
be7cef29d8 UI changes
Removes the separate column for view style and instead appends it to the App Type column.
2021-11-10 10:52:14 +01:00
Samuel Adams
e914c84ad3 Adds View Style to Apps list 2021-11-10 10:52:14 +01:00
Samuel Adams
d5b25dde3d
Add admin badge to user list (#3033)
Co-authored-by: d11n <mail@dennisreimann.de>
2021-11-10 10:49:16 +01:00
Kukks
bede4a3a42 Fix: Do not crash when redirect url is not provided to Authorize page 2021-11-08 09:24:12 +01:00
Kukks
befa436087 Fix: Disable LNURL if Lightning gets disabled. 2021-11-08 08:51:21 +01:00
nicolas.dorier
c921b2ca7b
Fix: Test Connection for lightning setup was hidding cause of failure 2021-11-04 23:28:26 +09:00
nicolas.dorier
2afd02152d
Fix: By default, BTC On chain, the BTC Lightning BOLT11 should be preferred 2021-11-04 18:21:38 +09:00
nicolas.dorier
f3e9e2ec5f
Fix: Creating a new invoice in payment request with LNURL activated would crash 2021-11-04 18:03:54 +09:00
Nicolas Dorier
d39ae86915
Improve error reporting in create invoice page (#3065) 2021-11-04 17:12:17 +09:00
Kukks
51f0c2a5f8 Apply better messages 2021-11-04 08:53:44 +01:00
Troy Anderson
4f235e1d62
resolves Issue #3042 add archive status to invoice response (#3043) 2021-11-01 15:53:33 +09:00
Troy Anderson
8fed8f77ad
PR for Issue #3038 adds params for getInvoices pagination (#3039)
* ##3038 add pagination elements

* correct skip to take

* updated swagger docs

* set take nullable to true
2021-10-31 19:47:12 +09:00
nicolas.dorier
933dc6be31
Fix: The checkout page would reload the page when changing payment method 2021-10-30 13:57:24 +09:00
nicolas.dorier
ccd8859d7f
Add missing attribute for textSearch in get invoice 2021-10-29 22:27:21 +09:00
Kukks
94865815c7 Quick fixes before release 2021-10-29 14:50:18 +02:00
Kukks
560b6db480 fix refund button part 2 2021-10-29 13:46:24 +02:00
Kukks
4c71167535 Fix refund button 2021-10-29 13:20:54 +02:00
Samuel Adams
707484709a
Display and update App Name in settings (#3027)
* Edit and view app name in app settings

Currently the "name" property is not exposed at all in an app's settings/update page, which can result in confusion about which app is being updated, and also a general confusion between the `Title` property and the `Name` property.
This PR gives visibility to the app name in settings, and allows updating of the same.
I also changed the display label for `title` and `name` to make them more distinct and specific.

* Fix tests

* Update AltcoinTests.cs

* Update SeleniumTests.cs

* fix tests

Co-authored-by: Nicolas Dorier <nicolas.dorier@gmail.com>
2021-10-29 19:29:02 +09:00
Kukks
3f176a6b6b fix lnurl setter bug 2021-10-29 11:27:36 +02:00
Andrew Camilleri
25f84d000b
LNURL POS Support (#3019) 2021-10-29 10:27:33 +02:00
d11n
2d4aa52fa5
Restructure store and payment settings (#2995)
Co-authored-by: Kukks <evilkukka@gmail.com>
2021-10-29 08:25:43 +02:00
Umar Bolatov
8f117b5079
Add ability to require refund email from app level (#3013)
* Add ability to require refund email from app level

* Add ability request refund email when creating invoice manually

* Adjust labels

* Add UI tests

* Add Greenfield API support

* Rename RequiresRefundEmailType to RequiresRefundEmail

* Fix build

Co-authored-by: Nicolas Dorier <nicolas.dorier@gmail.com>
2021-10-27 23:32:56 +09:00
Kukks
1ecd1c1e54 LNURL: Add missing logic from lnurl merges and rebases 2021-10-26 14:08:09 +02:00
Kukks
fccbbb6fb7 LNURL tests and small fixes 2021-10-26 13:55:59 +02:00
Nicolas Dorier
c0abcbea24
Merge pull request #3015 from NicolasDorier/ewfoufeoiu
Fixes of bugs happening when using rootpath
2021-10-25 16:55:00 +09:00
nicolas.dorier
a73383cd87
When creating a new apps, the default currency of the store should be used 2021-10-25 16:54:36 +09:00
Andrew Camilleri
951bfeefb1
LNURL Payment Method Support (#2897)
* LNURL Payment Method Support

* Merge recent Lightning controller related changes

* Fix build

* Create separate payment settings section for stores

* Improve LNURL configuration

* Prevent duplicate array entries when merging Swagger JSON

* Fix CanSetPaymentMethodLimitsLightning

* Fix CanUsePayjoinViaUI

* Adapt test for new cancel bolt invoice feature

* rebase fixes

* Fixes after rebase

* Test fixes

* Do not turn LNURL on by default, Off-Chain payment criteria should affects both BOLT11 and LNURL, Payment criteria of unset payment method shouldn't be shown

* Send better error if payment method not found

* Revert "Prevent duplicate array entries when merging Swagger JSON"

This reverts commit 5783db9eda.

* Fix LNUrl doc

* Fix some warnings

Co-authored-by: Dennis Reimann <mail@dennisreimann.de>
Co-authored-by: nicolas.dorier <nicolas.dorier@gmail.com>
2021-10-25 15:18:02 +09:00
nicolas.dorier
fb1fcbe0b9
Fix: The redirect url of crowdfund invoices wasn't set correctly if rootpath is used (Fix #2992) 2021-10-25 15:13:52 +09:00
Samuel B. Atwood
0558631982
Improve store/selectlist labeling (#3014) 2021-10-25 13:15:08 +09:00
Nicolas Dorier
86e528e5df
Use NBitcoin's Network.UriScheme rather than our own (#3005) 2021-10-23 14:47:15 +09:00
Andrew Camilleri
c46a69e1bd
Add Paging to Pull Payments (#2997) 2021-10-22 15:10:59 +09:00
Andrew Camilleri
9b0d1a23dc
Decouple Pull payment from wallets (#2987)
* Decouple Pull payments from wallet

* Update _Nav.cshtml

* Fixes
2021-10-22 11:17:40 +09:00
Nicolas Dorier
4cf3249e0b
Add ability to set default currency for a store (#2998) 2021-10-20 23:17:40 +09:00
nicolas.dorier
09a53718bb
Abort payjoin request after 30 sec of timeout 2021-10-20 17:06:27 +09:00
Samuel B. Atwood
791d0abb34
Clarify payment method criteria error message (#2989)
As requested by @BTCBellyButton, this clarifies the error message shown resulting from an invalid payment method criteria.
https://github.com/btcpayserver/btcpayserver/pull/2975#issuecomment-945218280
2021-10-20 14:02:20 +09:00
Bananenbieger123
c4f40d68e9
Fix cryptic error message issue (#2978) 2021-10-18 10:42:53 +02:00
Nicolas Dorier
3d3016fdca
Fix fallback logic for default payment method (#2986) 2021-10-18 16:56:47 +09:00
Nicolas Dorier
262798d577
Refactor by adding extension FindPayoutHandler (#2984) 2021-10-18 15:00:38 +09:00
Andrew Camilleri
cf206e64a7
Add Lightning payout support (#2517)
* Add Lightning payout support

* Adjust Greenfield API to allow other payment types for Payouts

* Pull payment view: Improve payment method select

* Pull payments view: Update JS

* Pull payments view: Table improvements

* Pull payment form: Remove duplicate name field

* Cleanup Lightning branch after rebasing

* Update swagger documnetation for Lightning support

* Remove required requirement for amount in pull payments

* Adapt Refund endpoint to support multiple playment methods

* Support LNURL Pay for Pull Payments

* Revert "Remove required requirement for amount in pull payments"

This reverts commit 96cb78939d43b7be61ee2d257800ccd1cce45c4c.

* Support Lightning address payout claims

* Fix lightning claim handling and provide better error messages

* Fix tests

Co-authored-by: Dennis Reimann <mail@dennisreimann.de>
2021-10-18 12:37:59 +09:00
Kukks
5176eaf4ba fix test 2021-10-15 12:53:45 +02:00
Kukks
9592a77cff use more concrete types for price type in app items 2021-10-15 12:53:45 +02:00
Kukks
7d2aa28e1f Support Topup Invoices in Apps 2021-10-15 12:53:45 +02:00
Nicolas Dorier
9df4429fc2
Remove unreachable code (#2961) 2021-10-15 16:34:40 +09:00
Andrew Camilleri
d64fb15ac2
Greenfield: Provide negative undue when overpaid. (#2936)
* Greenfield: Provide negative undue when overpaid.

closes #2935

* Invoice's due can be negative, fix Amount field of invoice

* Update swagger.template.invoices.json

Co-authored-by: Nicolas Dorier <nicolas.dorier@gmail.com>
2021-10-15 14:23:34 +09:00
Nicolas Dorier
75776687bc
Fix bug: Importing seed with Is hot wallet checked was not working (#2966) 2021-10-12 18:37:13 +09:00
nicolas.dorier
0033aab03e
Remove types from BTCPayServer.Client 2021-10-11 18:01:32 +09:00
nicolas.dorier
1037fe0b14
Remove unused ExpireInvoiceResponse type 2021-10-11 17:58:01 +09:00
Nicolas Dorier
d7a7382d00
Introduce cheat mode (#2965) 2021-10-11 12:32:09 +09:00
Wouter Samaey
e842a00402
Easier payment testing (#2672)
* Easier payment testing

* WIP, more TODOs and some cleanup. Help is appreciated.

* Added dummy button to expire monitoring (doesn't work yet)

* Added TODO

* Make fake tab default if present

* Split controller and change wording from fake to testing

* Extract and simplify checkout testing UI

* Restrict testing access to regtest

Co-authored-by: Dennis Reimann <mail@dennisreimann.de>
2021-10-11 11:11:02 +09:00
Aaron Clauson
a7c093a0eb
Allow email notifications when creating invoices from Web UI (#2959)
Currently invoice email notifications are only sent when the invoice is created via the API. This commit adds an option to set an email address for notifications when an invoice is created from the Web UI.
2021-10-10 15:54:25 +09:00
Andrew Camilleri
54539001f1
Allow User to delete own account (#2949)
* Allow User to delete own account

* Add User delete e2e test

* fix test

* Apply suggestions from code review

Co-authored-by: d11n <mail@dennisreimann.de>

Co-authored-by: d11n <mail@dennisreimann.de>
2021-10-09 12:18:37 +09:00
Nicolas Dorier
89fd044b00
Replace pruning wallet by wipe transactions (#2857) 2021-10-07 16:54:22 +09:00
nicolas.dorier
d3f9eb38a9
Fix annoying err message in logs when a websocket is cancelled 2021-10-07 15:35:19 +09:00
Andrew Camilleri
7bcaf956e7
Grerenfield: Add availableStatusesForManualMarking to Invoice Data (#2934)
closes ##2933
2021-10-06 18:19:34 +09:00
Umar Bolatov
31c2a80758
Add ability to set invoice status from details page (#2923)
* Add ability to set invoice status from details page

* Remove unnecessary "using" statements

* Add print styles

* Fix Safari issues

* Simplify JS

* Update status badge class names

* Update dropdown toggle padding

* Adjust dropdown menu padding
2021-10-06 14:49:57 +09:00
nicolas.dorier
150e4b842c
Make sure the process doesn't crash if exception raised in Subscribe 2021-10-06 13:22:55 +09:00
nicolas.dorier
b970f64639
Remove build warnings 2021-10-06 12:53:41 +09:00
nicolas.dorier
08bd13b2cd
Make CanUseWebhooks more resilient 2021-10-06 11:25:21 +09:00
Andrew Camilleri
6e3d6125c2
Payment Settled Webhook event (#2944)
* Payment Settled Webhook event

resolves #2691

* Move payment methods to payment services
2021-10-05 18:10:41 +09:00
nicolas.dorier
b0ef98dd63
Keep websocket connection alive on notifications and vault 2021-10-05 14:30:01 +09:00
nicolas.dorier
dea747a9a9
Keep connection alive on checkout page by sending ping messages 2021-10-05 13:37:30 +09:00
Dennis Reimann
a32ace1dcb Shorten balance assignment 2021-10-04 17:10:07 +02:00
Dennis Reimann
4785f0a4dd Remove unused Network property 2021-10-04 17:10:07 +02:00
Max Dignan
b7a081b9a4 Show total balances for each currency on List Wallets Page 2021-10-04 17:10:07 +02:00
Kukks
a3c2a9ac61 Censor based on permissions 2021-10-04 17:06:11 +02:00
Wouter Samaey
7cad6302b7 Fixed wrong API permission
Viewing store payment methods needs CanViewStoreSettings instead of CanModifyStoreSettings as per the docs
2021-10-04 17:06:11 +02:00
Dennis Reimann
802fec6bf3 Move payment related properties 2021-10-04 09:50:36 +02:00
Dennis Reimann
67aee9bdc6 Improve display and structure of payment related configuration 2021-10-04 09:50:36 +02:00
d11n
975ad2f8ab
Crowdfund: Display contributions value (#2938) 2021-10-04 07:54:06 +02:00
Kukks
ed1ec2300d Remove Coinswitch entirely 2021-09-28 10:33:11 +02:00
d11n
a3afcd2a6e
Crowdfund public UI re-design (#2918)
* Patch bootstrap-vue modal close button

For Bootstrap v5 compatibility, which bootstrap-vue does not have currently.

* Crowdfund: Use common global layout head (and themes)

* Crowdfund: Display disabled alert also for simple variant

* Crowdfund: Unify non-JS/simple and JS-enabled view

* Improve fireworks animation

* Improve layout

Inspired by the Bitcoin Smiles compaign, see  #2783

* Cleanup and remove views

* Fix typo

* Fix test
2021-09-27 11:46:56 +09:00
Andrew Camilleri
9f6c7180b2
Greenfield quality of life improvements from feedback (#2880)
* Greenfield quality of life improvements from feedback

fix #2854

* Greenfield quality of life improvements from feedback

fix #2855
2021-09-25 14:04:34 +09:00
Nicolas Dorier
83b54b7be1
Fix infinite loop happening if payment method unavailable with on invoices with lazy activation (#2914) 2021-09-24 00:00:55 +09:00
d11n
7f49824783
Improve public LN node info (#2876)
* Add store name to LN info unavailable pae

* Display multiple node info items if available

Allows to view clearnet and Tor connection info side by side.

* Re-add preferOnion for certain cases

* HTML compatible node ids

* Display more node connection failure details

* Fix syntax error

* Update BTCPayServer/Payments/Lightning/LightningLikePaymentHandler.cs

Co-authored-by: Nicolas Dorier <nicolas.dorier@gmail.com>

* View updates

* Revert previous variable change

* Keep logic out of the view

Co-authored-by: Nicolas Dorier <nicolas.dorier@gmail.com>
2021-09-23 20:36:42 +09:00
Umar Bolatov
5d8bc73063 Reset "all stores" values to default 2021-09-23 10:11:37 +02:00
Umar Bolatov
82675384c4 Don't adjust store mode if user is performing an action 2021-09-23 10:11:37 +02:00
Umar Bolatov
2b0fcdf95c [WIP] Fix issues with Authorization Request page
closes #2858
2021-09-23 10:11:37 +02:00
Umar Bolatov
7b252369e9 Add GetPOSItems method 2021-09-21 09:45:41 +02:00
Umar Bolatov
2dcd7db797 Filter unavailable items in controller 2021-09-21 09:45:41 +02:00
Umar Bolatov
5984edb7f4
Disallow cancelling payment request when "Allow payee to create invoices in their own denomination" is not enabled (#2843)
* Disallow cancelling payment request when "Allow payee to create invoices in their own denomination" is not enabled

close #2802

* Disallow cancelling pending invoice on BE

* Update non-JS version of payment request view to disallow cancelling

* Update CanCancelPaymentWhenPossible

* Fix typo
2021-09-17 10:24:48 +09:00
Umar Bolatov
e6aa73197a Move GetDefaultPaymentId out of InvoiceExtensions 2021-09-16 07:29:18 +02:00
Umar Bolatov
5cba59932b Add ability to specify default payment method through Greenfield API 2021-09-16 07:29:18 +02:00
Umar Bolatov
809340e629 Add ability to select default payment method for invoice through UI 2021-09-16 07:29:18 +02:00
Umar Bolatov
d88f012d82
Improve warning when creating invoice without wallet (#2844)
* Improve warning when creating invoice without wallet

close #2834

* Update link class name
2021-09-13 14:24:10 +09:00
d11n
6666786b7a
Unify Fido2 authentication under two-factor tab (#2866)
* Unify Fido2 authentication under two-factor tab

Closes #2754.

* Improve UI and wording

* Improve register FIDO2 device page
2021-09-13 10:16:52 +09:00
nicolas.dorier
ad7b62fa3d
Fix CSP when there is a theme 2021-09-10 00:14:26 +09:00
nicolas.dorier
c39f1341aa
Fix warnings 2021-09-09 20:31:35 +09:00
nicolas.dorier
de2c12c1df
Fix warning 2021-09-08 18:45:12 +09:00
nicolas.dorier
ae43af999b
update HWI lib 2021-09-08 18:27:36 +09:00
Nicolas Dorier
14a10eeef8
Remove useless code (#2852) 2021-09-07 19:18:56 +09:00
Umar Bolatov
180be49824 Add "#nullable enable" 2021-09-07 10:39:36 +02:00
Umar Bolatov
5faa756f1c Add check for empty theme URI before saving theme settings 2021-09-07 10:39:36 +02:00
d11n
06db29dd43
Delete confirmation modals (#2614)
* Refactor confirm view: separate modal

* Add delete confirmation modals for apps and FIDO2

* Add delete confirmation modals for 2FA actions

* Add delete confirmation modals for api keys and webhooks

* Add delete confirmation modals for stores and store users

* Add delete confirmation modals for LND seed and SSH

* Add delete confirmation modals for rate rule scripting

* Test fixes and improvements

* Add delete confirmation modals for dynamic DNS

* Add delete confirmation modals for store access tokens

* Add confirmation modals for pull payment archiving

* Refactor confirm modal code

* Add confirmation input, update wording

* Update modal styles

* Upgrade ChromeDriver

* Simplify and unify confirmation input

* Test fixes

* Fix wording

* Add modals for wallet replace and removal
2021-09-07 11:55:53 +09:00
Andrew Camilleri
6d317937c7
Do not generate payment methods when 0 amount invoice (#2776)
* Do not generate payment methods when 0 amount invoice

* Add test for 0 amoutn invoices
2021-09-07 00:23:41 +09:00
Umar Bolatov
522c990278 Allow creating top-up invoice when min/max payment amount criteria is active
closes #2831
2021-09-06 10:44:10 +02:00
Nicolas Dorier
e584ebe7de
Decouple taproot activation from support in generate wallet (#2837) 2021-09-04 22:07:09 +09:00
d11n
fe18e71538
Refactor themes (#2794)
* Remove Bootstrap/Creative CSS file customizability

Customizations should be done using themes

* Remove deprecated Casa and Classic themes

They are still available in the design system repo and should be added as custom theme CSS file

* Use either standard or custom theme

* Remove deprecated themes

* Improve theme select UI

* Finish and refactor theme switching

* updates theme copy

* Update BTCPayServer/Views/Server/Theme.cshtml

Co-authored-by: Zaxounette <51208677+Zaxounette@users.noreply.github.com>

* Combine creative.css and site.css

Co-authored-by: dstrukt <gfxdsign@gmail.com>
Co-authored-by: Zaxounette <51208677+Zaxounette@users.noreply.github.com>
2021-09-03 16:16:36 +09:00
Manan Sharma
e5699f674b
Taproot support for wallets (#2830)
* Support taproot for HotWallet

* Support taproot for hardware wallets

* Fix NBX version

* Undo formatting

* Do not show Taproot when not supported

* Create taproot wallet from xpub

* Bug Fix
2021-09-03 15:37:12 +09:00
Umar Bolatov
748423dfe8 Add UpdateOnChainPaymentMethodRequest 2021-09-02 10:42:41 +02:00
Umar Bolatov
2f4e610900 Add UpdateLightningNetworkPaymentMethodRequest 2021-09-02 10:42:41 +02:00
Umar Bolatov
d39ec97b9a Remove "enabled" option from address preview endpoint 2021-09-02 10:42:41 +02:00
Dennis Reimann
0d08bd3ad1 Minor syntax changes 2021-09-02 10:39:35 +02:00
Dennis Reimann
373b0b7850 Remove superfluous export command 2021-09-02 10:39:35 +02:00
Dennis Reimann
9bb74a17d8 Refine views and use cases 2021-09-02 10:39:35 +02:00
Dennis Reimann
b4c1f695a8 Remove psbt ready view
The transaction info is now shown on the decoded PSBT page.
2021-09-02 10:39:35 +02:00
Dennis Reimann
bcdb1ab1d8 Improve review/broadcast flow and fix test 2021-09-02 10:39:35 +02:00
Dennis Reimann
3895b133a3 Move PSBT flow into wizard 2021-09-02 10:39:35 +02:00
Dennis Reimann
cd93a5ab6b Add separate signing flow for PSBT 2021-09-02 10:39:35 +02:00
Nicolas Dorier
12105ab85c
Fix rounding error for the first refund option (#2778) (#2810)
* Fix rounding error for the first refund option (#2778)

* Fix rounding issue
2021-08-31 15:08:33 +09:00
d11n
723817e3f8
Fix payment request cloning and unexpire if necessary (#2820)
* Unexpire payment requests without expiry date

* Unset expiry date when cloning payment request

* Syntax and code improvements
2021-08-31 15:07:54 +09:00
Umar Bolatov
d1ea4e4fa4
Fix bug with top-up invoices when used with "Only enable the payment method after user explicitly chooses it" enabled (#2780)
* Fix bug with top-up invoices when used with "Only enable the payment method after user explicitly chooses it" enabled

* Remove unused "using" directives

* Add "#nullable enable" directive

* check for top-up invoice in LightningLikePaymentHandler
2021-08-23 15:13:26 +09:00
Joris Vial
de5ab80038 Fix typo 2021-08-15 08:26:02 +02:00
Ayush Jain
2dfb637e2f
Enhance files actions to accept arrays of fileids (#2735)
* 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
2021-08-09 23:40:55 +09:00
Nicolas Dorier
e7e8ed55c2
Remove support for payout to a Bitcoin Url (#2766) 2021-08-09 22:43:38 +09:00
Ayush Jain
cf067ca51b
Update successful refund message (#2764) 2021-08-09 20:57:29 +09:00
Umar Bolatov
103b3b916b
Show new store warning icon only if neither on-chain wallet nor LN is configured (#2760)
close #2755
2021-08-09 20:32:43 +09:00
nicolas.dorier
83ab1a3b7c
Use ulong for configKey of LND rather than uint 2021-08-07 21:52:49 +09:00
Andrew Camilleri
060f30d0bf
Payouts: Unify confirm external payment and manually mark as paid actions (#2751) 2021-08-05 14:47:25 +09:00
Nicolas Dorier
f84b2c5160
Add proper error message if node/nbxplorer doesn't support taproot (#2752) 2021-08-05 13:56:31 +09:00
Dennis Reimann
e1eac5c390
Add a period in API Keys description
Fixes #2742
2021-08-03 14:10:48 +02:00
Nicolas Dorier
4c818d0359
Implement topup invoices (#2730) 2021-08-03 17:03:00 +09:00
d11n
63d4ccc058
Fix missing master fingerprint/account key path on wallet import (#2727)
* Fix missing master fingerprint/account key path on wallet import

Re-adds the view model properties that got removed in 8a1d5bbc57 and passes them through the confirm addresses form.

* Add test

This test fails on current master
2021-08-03 14:27:04 +09:00
Nicolas Dorier
1b85ab8b54
Improve UI of immature balance, show available balance in wallet list (#2732) 2021-08-01 22:13:12 +09:00
Manan Sharma
906c7eb7ec
Show Immature Balance in walletsend page (#2731)
* Wallet Send page also shows immature balance

* changes ans to and

* Immature Balance msg is not tooltip

* Make msg more clear
2021-08-01 21:12:00 +09:00
Nicolas Dorier
a9da79cc58
Use PaymentUrlBuilder for ensuring proper formatting of BIP21 addresses (#2723) 2021-07-30 18:47:02 +09:00
Nicolas Dorier
4c57405945
Properly clip taxIncluded and invoice's amount (#2724) 2021-07-30 18:46:49 +09:00
Nicolas Dorier
6ea96efe68
Update NBitcoin, fix warnings on nullable (#2718) 2021-07-29 20:29:34 +09:00
Andrew Camilleri
c59798e9c4
GreenField: Generate Store OnChain Wallet (#2708)
* GreenField: Generate Store OnChain Wallet

* Greenfield: Do not generate wallet if already configured
2021-07-27 23:53:44 +09:00
Andrew Camilleri
ba165ddd4f
Local Greenfield Client for Plugins (#2410)
* wip

* Local GreenField Client for Plugins

* support notification handlers being missing

* Initial support for scoped btcpay client

* test out scoped local client

* wip

* small fix

* Throw exception if using local greenfield client and it has not been implemented yet

* adapt based on new changes in BTCPay

* update

* fix tests

* Allow Local client to bypass authorization handler

* Add Misc endpoints to Local API Client

* Add new endpoints

* Apply code review changes
2021-07-27 21:11:47 +09:00
Andrew Camilleri
14e4d2d675
Make CSSThemeManager really only focus on theme (#2457)
* Make Settings Repository cache in memory

* Make use of SettingsRepo directly instead of CssThemeManager

* Completely remove CssThemeManager
2021-07-27 21:08:54 +09:00
Wouter Samaey
d8c1c51a21
Auto-detect language on payment page (#2552)
* Auto-detect language on payment page

based on the requst Accept-Language header, which is the language you configured in your browser/OS and this 99.99% accurate

* Update BTCPayServer/Services/LanguageService.cs

Co-authored-by: britttttk <39231115+britttttk@users.noreply.github.com>

* Update BTCPayServer/Services/LanguageService.cs

Co-authored-by: Andrew Camilleri <evilkukka@gmail.com>

* Update BTCPayServer/Services/LanguageService.cs

Co-authored-by: Andrew Camilleri <evilkukka@gmail.com>

* Update BTCPayServer/Services/LanguageService.cs

Co-authored-by: Andrew Camilleri <evilkukka@gmail.com>

* Added loop for all locales in Accept-Language sorted by weight + check if know this language

* New public method so a unit test can be created for it

* Unit test for language detection

* Fix language service when not in browser context

* fall back to default lang

* Auto-detect setting + ?lang=auto support

* Added invoice param "?lang=auto" info to docs

* Using null-coalescing assignment operator

* Reduce complexity and http dependency in language service

Co-authored-by: britttttk <39231115+britttttk@users.noreply.github.com>
Co-authored-by: Andrew Camilleri <evilkukka@gmail.com>
2021-07-27 08:17:56 +02:00
Kukks
f4df850d25 Greenfield: Rename enabledOnly to enabled?
Allows the filter to work in both directions instead
2021-07-26 12:03:11 +02:00
Kukks
4d538c61b1 Refactor Get Store Payment Methods
Add tests + docs + new pluggbale format for fetching payment method data + client
2021-07-26 12:03:11 +02:00
Umar Bolatov
17e6179fec Add "stores/{storeId}/payment-methods" endpoint
address #2545
2021-07-26 12:03:11 +02:00
dstrukt
b7b2f16925
Improves create point of sale view (#2646)
* re-ordering

* adds section header

* updates label on "products"

* changes button to primary

* moves description

* updates partial

* re-ordering + section headers

* more section heads and ordering

* redorders

* Toggle custom amount and tips settings

* Use display name for point of sale app type

* Use switches for enabling options

* Add space before required indicator

* Set and consolidate view model display names

* Move redirects and custom CSS to additional options

* Revert to checkbox for discounts

* adds padding

* removes bs-parent for multiple open elements on accordion

* adds helper text to discount checkbox

* updates "default view" label text

* wording cleanup

* more wording adjustments

* updates

* Add display names for app types

* Extract template editor inline styles

* updates helper text

* Display names for app types

* Typo fix

* Move template back to editor

* Fix selenium test

Co-authored-by: Dennis Reimann <mail@dennisreimann.de>
2021-07-23 12:57:19 +02:00
cypherbeerus
a7f6bcf36c Updated status message when adding files and related test 2021-07-22 08:49:21 +02:00
cypherbeerus
590ca4ef56 add support for uploading multiple files to server 2021-07-22 08:49:21 +02:00
Andrew Camilleri
04726b3ee4
Payouts: Detect External OnChain Payouts (#2462)
* Refactor and decouple Payout logic

So that we can support lightning + external payout payments

Fixes & refactoring

almost there

final

Remove uneeded payment method checks

Refactor payouts to handle custom payment method specific actions

External onchain payments to approved payouts will now require "confirmation" from the merchant that it was sent by them.

add pill tabs for payout status

* Improve some UX around feature

* add test and some fixes

* Only listen to address tracked source and determine based on wallet get tx call from nbx

* Simplify isInternal for Payout detection

* fix test

* Fix Noreferrer test

* Make EnsureNewLightningInvoiceOnPartialPayment more resilient

* Make notifications section test more resilient in CanUsePullPaymentsViaUI
2021-07-16 09:57:37 +02:00
Nicolas Dorier
73b461f8d0
Greenfield: add text search terms to an invoice (#2648) 2021-07-14 23:32:20 +09:00
Wouter Samaey
15be593bbd
Save paymentRequestId in Metadata when creating invoice for Payment Request (#2644)
* Save paymentRequestId in Metadata when creating invoice

* Added Payment Request ID + link on invoice detail page

* Added paymentRequestId to the webhook payload

* Removed PaymentRequestId from webhook payload (rolled back previous change)

* Using strongly typed InvoiceMetadata

* Added OrderUrl metadata field to invoice + link

* Added Metadata.OrderUrl to docs

* Made orderUrl visible when no orderId is present
2021-07-14 20:43:13 +09:00
Umar Bolatov
73c89ac28d
Auto-select store when creating a new invoice (#2680)
* Auto-select store when creating a new invoice

* Set types as nullable in InvoiceController.UI.cs
2021-07-14 20:40:18 +09:00
Umar Bolatov
861e5b1530
Add webhook delivery status indicator (#2679)
* Add webhook delivery status indicator

As discussed in: https://github.com/btcpayserver/btcpayserver/discussions/2616

* Add relative delivery time to tooltips
2021-07-12 21:58:11 +09:00
Andrew Camilleri
72d5c11811
Greenfield: Add CanModifyInvoices Permissions (#2595) 2021-07-11 00:30:01 +09:00
Umar Bolatov
aefb81b7f0
Add "skip" and "limit" params for onchain txs API endpoint (#2688)
Discussed here: https://github.com/btcpayserver/btcpayserver/discussions/2667
2021-07-10 13:04:01 +09:00
Nicolas Dorier
4bb3d60b6c
Add misc/permissions to document the hierarchical structure (#2654) 2021-07-08 14:34:10 +09:00
rockstardev
48355129c5 Properly counting transactions that impact NetworkFee 2021-07-06 21:20:13 +02:00
Andrew Camilleri
6c856aba48
Introduce Server paging for Payouts List (#2564)
* Introduce Server paging for Payouts List

* Add paging params

* Minor code and formatting improvements

* View updates

* Apply suggestions from code review

Co-authored-by: Zaxounette <51208677+Zaxounette@users.noreply.github.com>

* fix tests

Co-authored-by: Dennis Reimann <mail@dennisreimann.de>
Co-authored-by: Zaxounette <51208677+Zaxounette@users.noreply.github.com>
2021-06-30 16:59:01 +09:00
Andrew Camilleri
cb2dd464f1
GreenField: Add StoreId to Invoice model (#2592) 2021-06-24 23:15:51 +09:00
Wouter Samaey
2ea3baf36e
Minor UI improvements (#2606)
* Added "Checkout" button to invoice detail page

* Added missing icon

All other pages have a "plus" icon on the primary button, except this page

* Button icons are always in front, not after like here was
2021-06-24 19:52:41 +09:00
d11n
3c80621dac
Add payjoin option to hot wallet setup (#2450)
* Add payjoin option to hot wallet setup

Enables payjoin by default when creating a hot wallet and offers the user an opt-out.

Test fix

* Display PayJoin option only if it is available

* Test fixes

* Update hot wallet checks

* Test fix after rebase

* Use toggle buttons for enabling options
2021-06-18 10:25:17 +09:00
Nicolas Dorier
6b4ff4ce2c
Merge pull request #2575 from NicolasDorier/refactor/wallet-cleanup
Cleanup some old code in wallet setup
2021-06-17 21:20:28 +09:00
Pavlenex
1c440ed36c
Update Maintenance.cshtml (#2576)
* Update Maintenance.cshtml

* fix BTCPay Server maintenance error

* Rephrase "derivation settings" to "wallet settings"

* Pay button text fix

* rephrase CoinSwitch description
2021-06-17 19:40:08 +09:00
nicolas.dorier
70f56d5920
Encrypt WalletSetupViewModel.Config 2021-06-17 19:26:50 +09:00
nicolas.dorier
8a1d5bbc57
Remove outdated code in UpdateWallet 2021-06-17 16:39:55 +09:00
nicolas.dorier
956370592f
Create a dedicated IsHotwalletProperty in the DerivationSchemeSettings 2021-06-17 15:36:22 +09:00
nicolas.dorier
afd479ac69
Remove the DerivationSchemeViewmodel.Enabled property 2021-06-17 15:08:04 +09:00
nicolas.dorier
39a4be5641
Remove HintAddress 2021-06-17 14:11:01 +09:00
d11n
70fcd053cd
Signing context cleanup (#2568)
* Signing Context cleanup

Removes extra NBXSeedAvailable property in SigningContext, which got introduced in #2559. It is not needed since each view model involved already has it.

* Fix button in link
2021-06-15 17:35:23 +09:00
Umar Bolatov
3d21d2724e
Fix bug with LN payment method API endpoint throwing 500 (#2567)
close #2566
2021-06-14 18:19:52 +09:00
d11n
3c0292f074
Wallet: Signing UI improvements (#2559)
* Refactoring to generalize wizard layout

* Wallet: Add intermediate signing options view

* Update BTCPayServer/Views/Wallets/WalletSigningOptions.cshtml

Co-authored-by: britttttk <39231115+britttttk@users.noreply.github.com>

* Skip signing options for hot wallets

* Update signing options wordings, add PSBT doc link

* Fix test

* Remove form route params

* Use decode command for PSBT

Co-authored-by: britttttk <39231115+britttttk@users.noreply.github.com>
2021-06-14 14:06:56 +09:00
nicolas.dorier
371acc84a8
Do not retrieve all payouts in GetPullPayment every time 2021-06-10 18:54:27 +09:00
Andrew Camilleri
cd9feccf6e
Mark Payouts as Paid (#2539)
* Mark Payouts as Paid

This PR allows users to mark payouts as paid manually through the UI  and through the API. It also sets up the payout proof system to be able store a manual proof that will in a later PR allow you to specify a proof of payment (link or text)

* add docs, test and greenfield client

* remove extra docs stuff

* Update BTCPayServer.Tests/GreenfieldAPITests.cs

Co-authored-by: britttttk <39231115+britttttk@users.noreply.github.com>

* clean up pull payment/payouts fetch code

* Ensure payoutis are retrieved with pull payment

Co-authored-by: britttttk <39231115+britttttk@users.noreply.github.com>
2021-06-10 18:43:45 +09:00
Nicolas Dorier
e93b030bfe
Update HWI library, warn users to run newer version (#2544)
* Update HWI library, warn users to run newer version

* Update BTCPayServer/wwwroot/js/vaultbridge.ui.js

Co-authored-by: Zaxounette <51208677+Zaxounette@users.noreply.github.com>

* Update BTCPayServer/wwwroot/js/vaultbridge.ui.js

Co-authored-by: Pavlenex <pavle@pavle.org>

Co-authored-by: Zaxounette <51208677+Zaxounette@users.noreply.github.com>
Co-authored-by: Pavlenex <pavle@pavle.org>
2021-06-06 21:02:15 +09:00
Andrew Camilleri
9ecd27dc85
Merge pull request #2474 from bolatovumar/feat/test-webhooks
Add ability to send test webhook call
2021-06-04 13:01:57 +02:00
Kukks
28da78fc78 Improve tests and small refactoring 2021-06-04 12:20:45 +02:00
Umar Bolatov
bc33b32522
Add delivery ID to test webhook succes message 2021-06-03 21:16:27 -07:00
Umar Bolatov
4671f08b64
Augment webhook test error message 2021-06-03 21:16:26 -07:00
Umar Bolatov
9f6f74df59
Show success/error message after sending test webhook 2021-06-03 21:16:26 -07:00
Umar Bolatov
7cf6c97d3f
Return view after webhook test POST call 2021-06-03 21:16:25 -07:00
Umar Bolatov
2262acf12b
Add ability to send test webhook call 2021-06-03 21:16:24 -07:00
Umar Bolatov
8731055786
Use UserNotFound instead of NotFound 2021-06-02 20:02:31 -07:00
Umar Bolatov
be05b6aa90
Specify correct return type on delete user methods 2021-06-02 20:02:31 -07:00
Umar Bolatov
0b4d94faf2
Remove unnecessary null check 2021-06-02 20:02:30 -07:00
Umar Bolatov
9f8f677125
Remove unused IsAdmin method 2021-06-02 20:02:30 -07:00
Umar Bolatov
949d6bf584
Replace admin check with CanModifyServerSettings authorization policy 2021-06-02 20:02:30 -07:00
Umar Bolatov
9fc2d2b76b
Remove CanDeleteUser constraint from "/api/v1/users/{userId}" endpoint 2021-06-02 20:02:29 -07:00
Umar Bolatov
d9935ada9d
Add "/api/v1/users/me" endpoint 2021-06-02 20:02:29 -07:00
Umar Bolatov
b4076b53e8
Add IsAdminUser method to UserService 2021-06-02 20:02:28 -07:00
Umar Bolatov
53c81918a5
Enable nullable reference checking in UsersController 2021-06-02 20:02:28 -07:00
Umar Bolatov
104092702a
Simplify DeleteUser method 2021-06-02 20:02:27 -07:00
Umar Bolatov
2ed8341403
Add IsRoleAdmin to user service 2021-06-02 20:02:26 -07:00
Umar Bolatov
e5a196918f
Add user service 2021-06-02 20:02:26 -07:00
Umar Bolatov
907ae760e0
Add CanDeleteUser policy 2021-06-02 20:02:25 -07:00
Umar Bolatov
fe107cd23f
Add DELETE action for api/v1/users endpoint 2021-06-02 20:02:22 -07:00
Dennis Reimann
a830c1e812 Use ~ prefix for local PoS image references 2021-06-01 14:34:06 +02:00
Dennis Reimann
8eb85acb88 Self-host PoS sample images
As brought up in #2447 and previously been worked on in #1039.
2021-06-01 14:34:06 +02:00
Andrew Camilleri
3b375929c1
Support wider server sync info in greenfield server info (#2511)
fixes #2498
2021-05-19 13:07:28 +09:00
d11n
ed7031981b
Bootstrap v5 migration (#2490)
* Swap bootstrap asset files

* Update themes and color definitions

* Move general bootstrap customizations

* Theme updates

Theme updates

* Remove BuildBundlerMinifier

This lead to an error, because BuildBundlerMinifier and BundlerMinifier.Core seem to conflict here. Details: https://stackoverflow.com/a/61119586

* Rewplace btn-block class with w-100

* Update badge classes

* Remove old font family head variable

* Update margin classes

* Cleanups

* Update float classes

* Update text classes

* Update padding classes

* Update border classes

* UPdate dropdown classes

* Update select classes

* Update neutral custom props

* Update bootstrap and customizations

* Update ChromeDriver; disable smooth scroll

https://github.com/SeleniumHQ/selenium/issues/8295

* Improve alert messages

* Improve bootstrap customizations

* Disable reduced motion

See also 7358282f

* Update Bootstrap data attributes

* Update file inputs

* Update input groups

* Replace deprecated jumbotron class

* Update variables; re-add negative margin util classes

* Update cards

* Update form labels

* Debug alerts

* Fix aria-labelledby associations

* Dropdown-related test fixes

* Fix CanUseWebhooks test

* Test fixes

* Nav updates

* Fix nav usage in wallet send and payouts

* Update alert and modal close buttons

* Re-add backdrop properties

* Upgrade Bootstrap to v5 final

* Update screen reader classes

* Update font-weight classes

* Update monospace font classes

* Update accordians

* Update close icon usage

* Cleanup

* Update scripts and style integrations

* Update input group texts

* Update LN node setup page

* Update more form control classes

* Update inline forms

* Add js specific test

* Upgrade Vue.js

* Remove unused JS

* Upgrade Bootstrap to v5.0.1

* Try container related test updates

* Separate jQuery bundle

* Remove jQuery from LND seed backup page

* Remove unused code

* Refactor email autofill js

* Refactor camera scanner JS

* Re-add tests

* Re-add BuildBundlerMinifier

* Do not minify bundles containing Bootstrap

Details https://github.com/madskristensen/BundlerMinifier/issues/558

* Update bundles

* Cleanup JS test

* Cleanup tests involving dropdowns

* Cleanup tests involving collapses

* Cleanup locale additions in ConfigureCore

* Cleanup bundles

* Remove duplicate status message

* Cleanup formatting

* Fix missing validation scripts

* Remove unused unminified Bootstrap js files

* Fix classic theme

* Fix Casa theme

* Fix PoS validation
2021-05-19 11:39:27 +09:00
Nicolas Dorier
c551e5cd0a
Make sure to only select accounted payments where we should (#2523) 2021-05-14 16:16:19 +09:00
Nicolas Dorier
2961a2ed53
Merge pull request #2506 from Kukks/fix-pay-button-steps
Fix Pay Button steps and range validation
2021-05-13 17:33:34 +09:00
Wouter Samaey
06fef563e3
Fixed 2 typos (#2514)
* Fixed 2 typos

* Update BTCPayServer/Controllers/ManageController.APIKeys.cs

Co-authored-by: Zaxounette <51208677+Zaxounette@users.noreply.github.com>

* Update BTCPayServer/Controllers/ManageController.APIKeys.cs

Co-authored-by: Zaxounette <51208677+Zaxounette@users.noreply.github.com>

Co-authored-by: Zaxounette <51208677+Zaxounette@users.noreply.github.com>
2021-05-07 18:51:10 +02:00
Kukks
200e8330d8 Fix Pay Button steps and range validation
There were numerous issues around different button types and the amount range validation. Also fixes #2503
2021-05-05 11:27:02 +02:00
Andrew Camilleri
4e1b18e2bb
do not crash invoice if wellknown metadata keys used with different e… (#2448)
* do not crash invoice if wellknown metadata keys used with different expected types

* fix

* add bits from alt PR
2021-04-28 16:49:10 +09:00
Andrew Camilleri
5fe3c1c61f
U2fremove (#2496)
* Remove U2F support and JS

* fix final changes

* fix more final stuff
2021-04-28 16:22:09 +09:00
nicolas.dorier
5f9ef0ff62
Greenfield: Human friendly error if webhook or delivery not found 2021-04-27 15:38:42 +09:00
nicolas.dorier
dcc4214dcb
Make sure model binder error are returning error 422, use DateTimeOffsetModelBinder 2021-04-26 12:37:56 +09:00
Saker Omera
ded55a1440
customized api/v1/invoices query parameters to filter results (#2461)
* customized api/v1/invoices query parameters to filter results

* customized api/v1/invoices query parameters to filter results

* update swagger and make parameters as arrays

* change startDate and endDate types to UnixTimestamp

* update invoice status type in swagger and better handle dateTimeoffset

* change status type to array of InvoiceStatus to match controller

* change status type to array of InvoiceStatus to match controller

Co-authored-by: somera <somera@tesla.com>
2021-04-26 11:32:44 +09:00
Dennis Reimann
bbe621109f
Lightning setup redesign 2021-04-20 12:09:27 +02:00
Nicolas Dorier
b6bd7cce6d
Merge pull request #2446 from NicolasDorier/fweihnq
Give better error for greenfield API
2021-04-20 18:25:10 +09:00
nicolas.dorier
a7cbb3941a
Give better error for greenfield API 2021-04-20 18:21:26 +09:00
Dennis Reimann
962c80fff8
Remove permission check
Ensured via the controller, see https://github.com/btcpayserver/btcpayserver/pull/2469#discussion_r616289628
2021-04-20 09:10:23 +02:00
Dennis Reimann
aef06c7f61
Wording updates
Thanks @Zaxounette!
2021-04-20 09:09:32 +02:00
Nicolas Dorier
b2ff64733d
Update BTCPayServer/Controllers/StoresController.Onchain.cs
Co-authored-by: Zaxounette <51208677+Zaxounette@users.noreply.github.com>
2021-04-20 09:03:39 +02:00
Dennis Reimann
5fda21373e
Move enabling toggle to store overview 2021-04-20 09:03:37 +02:00
Andrew Camilleri
0554565b30
FIDO2/WebAuthN Support (#2356)
* FIDO2/WebAuthN Support

This adds initial support for WebAuthN/FIDO2 as another MFA mode. U2F is still intact and runs alongside it for now. Once this is merged, I will start work on migrating U2F support to happen over the FIDO2 protocol instead.

* Refactor and future proof system (prep work of seamless u2f migration)

* attempt js fix for mobile devices

* Apply suggestions from code review

Co-authored-by: d11n <mail@dennisreimann.de>

* fix fido name saving

* do not spam logs and hide loader when failed

* PR Changes

* Apply suggestions from code review

Co-authored-by: d11n <mail@dennisreimann.de>

* attempt fido2 bump

* add name if not named for credentials

Co-authored-by: d11n <mail@dennisreimann.de>
2021-04-20 14:06:32 +09:00
Nicolas Dorier
9b50e85d0d
Merge pull request #2455 from btcpayserver/feat/improving-files-page
Improving File Storage page
2021-04-20 11:06:14 +09:00
Andrew Camilleri
7d1761de4f
Coin Selection: Confirmed filter (#2467)
Allows provides confirmation count to Greenfield UTXO GET api
2021-04-20 11:02:06 +09:00
rockstardev
04a29ece3b
Only display storage providers that can actually be set in dropdown 2021-04-18 14:03:22 -05:00
rockstardev
8f6048191d
Improving navigation between files and storage services and rewording info text 2021-04-18 13:42:17 -05:00
Umar Bolatov
475a68924e
Allow accessing "misc/lang" endpoint with Greenfield auth schemes (#2471)
closes #2437
2021-04-18 11:22:50 +09:00
Nicolas Dorier
c0a544351b
Can disable the modification of SSH settings in BTCPay Server (#2468)
* Can disable the modification of SSH settings in BTCPay Server

* Update BTCPayServer/Controllers/ServerController.cs

Co-authored-by: Zaxounette <51208677+Zaxounette@users.noreply.github.com>

* Update BTCPayServer/Controllers/ServerController.cs

Co-authored-by: Zaxounette <51208677+Zaxounette@users.noreply.github.com>

* Update BTCPayServer/Views/Server/SSHService.cshtml

Co-authored-by: Zaxounette <51208677+Zaxounette@users.noreply.github.com>

Co-authored-by: Zaxounette <51208677+Zaxounette@users.noreply.github.com>
2021-04-17 13:29:50 +09:00
nicolas.dorier
e1df1c255a
Add user id in log when log in 2021-04-15 11:19:06 +09:00
Andrew Camilleri
64e34d0ef5
Seaparate CoinSwitch as a plugin (#2390)
* Separate coinswitch as a system plugin

* Decouple Coinswitch from Checkout UI

* remove dummy csproj

* Remove CoinSwitchTests.cs per @NicolasDorier feedback

Co-authored-by: rockstardev <rockstardev@users.noreply.github.com>
2021-04-13 20:19:48 +09:00
Andrew Camilleri
2e12befb8b
Refactor and decouple Payout logic (#2046)
* Refactor and decouple Payout logic

So that we can support lightning and more complex flows like allowing external payments to payouts.

* fix dropdown align

* switch to simpler buttons

* rebase fixes

add some comments

* rebase fixes

add some comments

* simplify enum caveman logic

* reduce code duplication and db round trips

* Fix pull payment date format

* fix issue with payouts to send page not working correctly

* try fix some style issue

* fix bip21parse
2021-04-13 17:36:49 +09:00
nicolas.dorier
98eee27b93
Remove warnings 2021-04-13 17:06:11 +09:00
Andrew Camilleri
8fd4a816a6
Allow Payjoin for wallet receive addresses (#2425)
* Allow Payjoin for wallet receive addresses

* wip

* show bip21 and additional work

* style better

* add to docs

* pr changes

* remove from state when unreserved
2021-04-13 12:26:36 +09:00
d11n
b12c4c5fa0
Improve and unify page headers (#2412)
* Improve and unify page headers

* Altcoin test fixes

* Update BTCPayServer/Views/Apps/UpdateCrowdfund.cshtml

Co-authored-by: Andrew Camilleri <evilkukka@gmail.com>

* Update BTCPayServer/Views/Apps/UpdateCrowdfund.cshtml

Co-authored-by: Andrew Camilleri <evilkukka@gmail.com>

* Fix missing store name in pairing view

* Fix CanUsePairing test

* Bump header navigation font size

* Use partial tag instead of Html.PartialAsync in views

As suggested by @nicolasdorier. These are equivalent, see details [here](https://docs.microsoft.com/en-us/aspnet/core/mvc/views/partial?view=aspnetcore-3.1#partial-tag-helper).

* Fix docs link

As in #2432.

* Update BTCPayServer/Views/Wallets/SignWithSeed.cshtml

Co-authored-by: britttttk <39231115+britttttk@users.noreply.github.com>

* Update BTCPayServer/Views/Wallets/WalletSendVault.cshtml

Co-authored-by: britttttk <39231115+britttttk@users.noreply.github.com>

* Update BTCPayServer/Views/Wallets/WalletTransactions.cshtml

Co-authored-by: britttttk <39231115+britttttk@users.noreply.github.com>

Co-authored-by: Andrew Camilleri <evilkukka@gmail.com>
Co-authored-by: britttttk <39231115+britttttk@users.noreply.github.com>
2021-04-08 22:32:42 +09:00
Andrew Camilleri
5de93f8cc4
Abstract Store integrations (#2384)
* Decouple Shopify from Store

* Decouple shopify from store blob

* Update BTCPayServer.Tests.csproj

* Make sure shopify obj is set

* make shopify a system plugin
2021-04-08 13:37:05 +09:00
Andrew Camilleri
ad1b708da5
Provide more data through OnChain Wallet API (#2420)
Provides unconf/conf balanaces, keypath + address + timestamp of utxos
2021-04-08 12:43:51 +09:00
Andrew Camilleri
f367480857
GreenField: Add FeeRate To Wallets API (#2375)
* GreenField: Add FeeRate To Wallets API

closes #1846

* make dedicated endpoint for fee rate

* remove unused call
2021-04-07 15:16:17 +09:00