From 0780df4fd713fc0f27a7d242b06bd817fc954bdf Mon Sep 17 00:00:00 2001 From: Oliver Ziegler Date: Sat, 9 Jun 2018 17:25:45 +0200 Subject: [PATCH] Support UFO --- BTCPayServer/BTCPayNetworkProvider.Ufo.cs | 34 ++++++++++++++++++++++ BTCPayServer/BTCPayNetworkProvider.cs | 1 + BTCPayServer/wwwroot/imlegacy/ufo.png | Bin 0 -> 15502 bytes 3 files changed, 35 insertions(+) create mode 100644 BTCPayServer/BTCPayNetworkProvider.Ufo.cs create mode 100644 BTCPayServer/wwwroot/imlegacy/ufo.png diff --git a/BTCPayServer/BTCPayNetworkProvider.Ufo.cs b/BTCPayServer/BTCPayNetworkProvider.Ufo.cs new file mode 100644 index 000000000..45a3e6d6f --- /dev/null +++ b/BTCPayServer/BTCPayNetworkProvider.Ufo.cs @@ -0,0 +1,34 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Threading.Tasks; +using BTCPayServer.Services.Rates; +using NBitcoin; +using NBXplorer; + +namespace BTCPayServer +{ + public partial class BTCPayNetworkProvider + { + public void InitUfo() + { + var nbxplorerNetwork = NBXplorerNetworkProvider.GetFromCryptoCode("UFO"); + Add(new BTCPayNetwork() + { + CryptoCode = nbxplorerNetwork.CryptoCode, + BlockExplorerLink = NetworkType == NetworkType.Mainnet ? "https://chainz.cryptoid.info/ufo/tx.dws?{0}" : "https://chainz.cryptoid.info/ufo/tx.dws?{0}", + NBitcoinNetwork = nbxplorerNetwork.NBitcoinNetwork, + NBXplorerNetwork = nbxplorerNetwork, + UriScheme = "ufo", + DefaultRateRules = new[] + { + "UFO_X = UFO_BTC * BTC_X", + "UFO_BTC = coinexchange(UFO_BTC)" + }, + CryptoImagePath = "imlegacy/ufo.png", + DefaultSettings = BTCPayDefaultSettings.GetDefaultSettings(NetworkType), + CoinType = NetworkType == NetworkType.Mainnet ? new KeyPath("202'") : new KeyPath("1'") + }); + } + } +} diff --git a/BTCPayServer/BTCPayNetworkProvider.cs b/BTCPayServer/BTCPayNetworkProvider.cs index 21f030d31..5a1c997ce 100644 --- a/BTCPayServer/BTCPayNetworkProvider.cs +++ b/BTCPayServer/BTCPayNetworkProvider.cs @@ -52,6 +52,7 @@ namespace BTCPayServer InitMonacoin(); InitPolis(); InitFeathercoin(); + InitUfo(); } /// diff --git a/BTCPayServer/wwwroot/imlegacy/ufo.png b/BTCPayServer/wwwroot/imlegacy/ufo.png new file mode 100644 index 0000000000000000000000000000000000000000..f48381134cf479522c6199eafde43741692e2762 GIT binary patch literal 15502 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 literal 0 HcmV?d00001