diff options
| author | xiphon <xiphon@protonmail.com> | 2020-07-16 17:28:00 +0000 |
|---|---|---|
| committer | xiphon <xiphon@protonmail.com> | 2020-07-16 17:28:00 +0000 |
| commit | 99907e539ad9b0341ce1bce4b93f097516dfc5f6 (patch) | |
| tree | 38799c06333ac910dcf951b8b9898dd157b44071 /src/libwalletqt | |
| parent | c137a6ea36040aee20366933935805eff67ae3f8 (diff) | |
| download | monzero-gui-99907e539ad9b0341ce1bce4b93f097516dfc5f6.tar.gz monzero-gui-99907e539ad9b0341ce1bce4b93f097516dfc5f6.tar.xz monzero-gui-99907e539ad9b0341ce1bce4b93f097516dfc5f6.zip | |
WalletManager: parse_uri_to_object extra parameters support
Diffstat (limited to 'src/libwalletqt')
| -rw-r--r-- | src/libwalletqt/WalletManager.cpp | 18 |
1 files changed, 16 insertions, 2 deletions
diff --git a/src/libwalletqt/WalletManager.cpp b/src/libwalletqt/WalletManager.cpp index 90cdf26e..bae16c46 100644 --- a/src/libwalletqt/WalletManager.cpp +++ b/src/libwalletqt/WalletManager.cpp @@ -418,10 +418,24 @@ QVariantMap WalletManager::parse_uri_to_object(const QString &uri) const result.insert("amount", amount > 0 ? displayAmount(amount) : ""); result.insert("tx_description", tx_description); result.insert("recipient_name", recipient_name); + + QVariantMap extra_parameters; + if (unknown_parameters.size() > 0) + { + for (const QString &item : unknown_parameters) + { + const auto parsed_item = item.splitRef("="); + if (parsed_item.size() == 2) + { + extra_parameters.insert(parsed_item[0].toString(), parsed_item[1].toString()); + } + } + } + result.insert("extra_parameters", extra_parameters); } else { - result.insert("error", error); + result.insert("error", !error.isEmpty() ? error : tr("Unknown error")); } - + return result; } |
