Commit graph

285 commits

Author SHA1 Message Date
Nicolas Dorier
d8f145c4dc
Merge branch 'master' into plugins-db 2020-11-19 12:19:17 +09:00
Nicolas Dorier
9c5fd1b478
Merge pull request #2058 from NicolasDorier/webhook2
Add Webhooks in store's settings
2020-11-19 12:17:34 +09:00
Kukks
179520a211 Plugins: Allow creation of independent DbContexts
This allows plugins to create custom dbcontexts, which would be namespaced in the scheme with a prefix. Migrations are supported too and the table would be prefixed too
2020-11-18 12:27:26 +01:00
Kukks
931505d135 Plugins: Hook System
Almost an exact replica of https://developer.wordpress.org/plugins/hooks/
This will allow plugins to extend specific points in business logic, such as validation, invoice payload changes, etc
2020-11-15 14:39:21 +01:00
nicolas.dorier
f3611ac693
Add Webhooks in store's settings 2020-11-08 15:57:24 +09:00
nicolas.dorier
c967f91abb
Move some code out of InvoiceNotificationManager into InvoiceEventSaverService 2020-11-06 22:24:02 +09:00
Andrew Camilleri
5979fe5eef
BTCPay Extensions Part 2 (#2001)
* BTCPay Extensions Part 2

This PR cleans up the extension system a bit in that:
 * It renames the test extension to a more uniform name
 * Allows yo uto have system extensions, which are extensions but bundled by default with the release (and cannot be removed)
 * Adds a tool to help you generate an extension package from a csproj
 * Refactors the UI extension points to a view component
 * Moves some more interfaces to the Abstractions csproj

* Rename to plugins
2020-10-21 14:02:20 +02:00
Andrew Camilleri
71894ba245
Override Block Explorer Links (#2000)
* Override Block Explorer Links

closes #1953

* load overrides after save as well

* fix js
2020-10-21 09:53:05 +02:00
Andrew Camilleri
2b19e0fbc6
Remove SQLite as default option (#1987)
* Remove SQLite as default option

IF MERGED, STORES WITH NO DB CONFIG WILL NOT START UNTIL CONFIG IS UPDATED WITH `sqlitefile=sqlite.db`

* remove sqlite conn string option

* toggle between abs path or relative for sqlite db

* Update DefaultConfiguration.cs
2020-10-20 13:12:10 +02:00
Andrew Camilleri
1440e8c55d
BTCPay Server Extensions (#1925)
* BTCPay Server Extensions

![demo](https://i.imgur.com/2S00aL2.gif)

* cleanup

* fix

* Polish UI a bit,detect when docker deployment
2020-10-15 21:28:09 +09:00
Kukks
be3f248a5a Do not log the database connection string
fixes #1980
2020-10-14 09:06:50 +02:00
Kukks
42df6d58b1 Simplify Shopify integration
Added dedicated endpoint that generates an invoice or returns an existing one as needed for a shopify order
Added rate limiter to shopify endpoint to prevent abuse
Reduce shopify js to a small file
Use events from btcpay modal to reduce constant pinging to btcpay server
Register invoice payment failures on the shopify backend.
2020-09-24 16:25:35 +02:00
Kukks
0cf9b20328 Kukks Shopify Enhancement Suite Commit 2020-09-24 16:25:35 +02:00
rockstardev
7a04be0f30 Registering ShopifyOrderMarkerHostedService 2020-09-24 16:25:33 +02:00
Nicolas Dorier
25dd38af5c
Merge pull request #1730 from xpayserver/feat/eth
Add Ethereum & ERC20 Support
2020-09-15 19:51:55 +09:00
Kukks
50a9772388 Remove Changelly 2020-09-10 10:30:53 +02:00
XPayServer
de755ac0bb Add Ethereum & ERC20 Support
Add Tests
Add Index, XPub to payment data
Add Note on local ETH node
Fix Sync Summary and Race Condition
2020-09-09 08:19:10 +02:00
Kukks
d96bd15b3b
add status and refactor 2020-08-26 21:36:30 +09:00
Kukks
68686cd249 Add debug notifications
This adds a test notif only available in debug mode + endpoint `/Notifications/GenerateJunk` that generates x amount of notifications.
2020-08-19 13:31:28 +02:00
rockstardev
1b3e40fd70 Fixing typo 2020-08-03 03:17:04 -05:00
rockstardev
ea7231ff26 Adding hosted service that will optionally check for new version once a day 2020-08-03 03:17:04 -05:00
nicolas.dorier
7974633bba
Fix EmbeddedCSS being ignored, stripped by sanitizer 2020-07-30 11:36:33 +09:00
nicolas.dorier
02998fff49
Add Altcoins-Release and Altcoins-Debug configurations 2020-07-29 18:55:28 +09:00
XPayServer
92ae1109d0 Add Bitcoin Only Build 2020-07-28 22:48:51 +02:00
rockstardev
f88c02cccd Removing unused usings, readonly fields where possible 2020-06-28 22:07:48 -05:00
rockstardev
b6c7af32de Cleaning up bom from cs files 2020-06-28 21:44:35 -05:00
nicolas.dorier
51514252b6
Run dotnet format 2020-06-28 17:55:27 +09:00
nicolas.dorier
376b5fc160
Fix warning message when using SQLite (Fix #1695) 2020-06-27 15:35:32 +09:00
Nicolas Dorier
8230a408ac
Add pull payment feature (#1639) 2020-06-24 10:34:09 +09:00
Andrew Camilleri
12e2b93ac9
Add invoice notifications (#1674)
* Add invoice notifications

* fixeth le order

* comment-to-code auto commit

* reduce notifications
2020-06-22 16:32:51 +09:00
nicolas.dorier
cff5b82b06
Introduce INotificationHandler 2020-06-16 23:29:25 +09:00
rockstardev
741b93dc04 Removing obsolete NotificationDbSaver hosted service 2020-06-15 01:22:09 -05:00
rockstardev
0dab96f0a6 Moving Notification to dedicated Service namespace 2020-06-14 23:49:08 -05:00
rockstardev
0c170fc399 Caching of notifications, refactoring NotificationManager into singleton 2020-06-14 23:49:08 -05:00
rockstardev
d1383d78c5 Disconnecting NotificationBase from Event, introducing NotificationSender 2020-06-14 23:49:08 -05:00
rockstardev
654bb0c8ca Displaying number of unread messages in _Layout.cshtml 2020-06-14 23:49:08 -05:00
rockstardev
6ddb20d022 Foundation for events to propagate notifications 2020-06-14 23:49:08 -05:00
Kukks
587f244f1d Remove dependency on Common from Rating
replaces #1591 and #1592 , closes #1571 Replaces the Currencies.txt to a json format which includes the networks too ( there is also a test to check now) Also makes CurrencyPair not depend on network and instead use CurrencyNameTable
2020-05-31 20:54:50 +02:00
Andrew Camilleri
3a2970a495
Label Factory (#1516)
* Label Factory

* fix typo and format
2020-04-28 16:53:34 +09:00
Andrew Camilleri
b31fb1a269
Auto label utxos based on invoice and payjoin (#1499)
* Auto label utxos based on invoice and payjoin

This PR introduces automatic labelling to transactions.
* If it is an incoming tx to an invoice, it will tag it as such.
* If it was a payjoin tx , it will tag it as such.
* If a transaction's inputs were exposed to a payjoin sender, we tag it as such.

* wip

* wip

* support in coinselection

* remove ugly hack

* support wallet transactions page

* remove messy loop

* better label template helpers

* add tests and susbcribe to event

* simplify data

* fix test

* fix label  + color

* fix remove label

* renove useless call

* add toString

* fix potential crash by txid

* trim json keyword in manual label

* format file
2020-04-28 15:06:28 +09:00
nicolas.dorier
6927d81175
Implement Http Tor proxy as a internal http proxy 2020-04-09 17:38:55 +09:00
Andrew Camilleri
e183714475
Add Tor Http Client Factory (#1445)
* WIP: Add Tor Http Client Factory

This PR adds a Tor Http Client Factory so that we can do HTTP requests over socks5( which we usually use tor's socks5).
Using it for payjoin when possible.

Currently have an issue where a 503 is always returned.  Must be something wrong with my tor config or the socks proxy lib Im using

* fix

* remove external dependency

* make payjoin client use tor client if available

* fix docker test

* use tor client only if available and necessary

* remove bip 79 mention
2020-04-08 22:40:41 +09:00
Kukks
e4cb1a875b Remove tor client factory 2020-03-27 10:45:13 +01:00
Kukks
1a62ee9260 try fix tor socks5 connection 2020-03-27 10:45:12 +01:00
Kukks
56d5e6f99f fixes 2020-03-27 10:45:12 +01:00
Kukks
89da4184ff BIP79 Support 2020-03-27 10:45:12 +01:00
nicolas.dorier
ac14f199e4
Renaming GreenField classes 2020-03-27 12:55:21 +09:00
nicolas.dorier
e50e3f662d
Can create user without authentication if there is no admin 2020-03-18 23:10:15 +09:00
nicolas.dorier
e351e0c9ea
Remove dependency on NSwag 2020-03-18 20:08:09 +09:00
Kukks
e99767c7e2 Greenfield API: Create User
Slightly big PR because I started refactoring to reduce code duplication between the UI based business logic and the api one.
2020-03-17 08:21:27 +01:00