taler-typescript-core

Wallet core logic and WebUIs for various components
Log | Files | Refs | Submodules | README | LICENSE

commit 04aad590fb9e6141982a3d0a5aec7c29356e9c76
parent e61aae74d7551582d2eaa498665a96c012a16019
Author: Florian Dold <florian.dold@gmail.com>
Date:   Sun, 12 Feb 2017 04:40:28 +0100

accept exchange URL suggestion from bank

Diffstat:
Msrc/content_scripts/notify.ts | 1+
Msrc/pages/confirm-create-reserve.tsx | 6+++++-
Msrc/wxBackend.ts | 2++
3 files changed, 8 insertions(+), 1 deletion(-)

diff --git a/src/content_scripts/notify.ts b/src/content_scripts/notify.ts @@ -209,6 +209,7 @@ namespace TalerNotify { .absoluteTo(document.location.href), bank_url: document.location.href, wt_types: JSON.stringify(msg.wt_types), + suggested_exchange_url: msg.suggested_exchange_url, }; let uri = URI(chrome.extension.getURL("/src/pages/confirm-create-reserve.html")); let redirectUrl = uri.query(params).href(); diff --git a/src/pages/confirm-create-reserve.tsx b/src/pages/confirm-create-reserve.tsx @@ -396,7 +396,11 @@ export async function main() { throw Error(i18n.str`Can't parse wire_types: ${e.message}`); } - const suggestedExchangeUrl = await getSuggestedExchange(amount.currency); + let suggestedExchangeUrl = await getSuggestedExchange(amount.currency); + if (!suggestedExchangeUrl && query.suggested_exchange_url) { + suggestedExchangeUrl = query.suggested_exchange_url; + } + let args = { wt_types, suggestedExchangeUrl, diff --git a/src/wxBackend.ts b/src/wxBackend.ts @@ -90,6 +90,7 @@ function makeHandlers(db: IDBDatabase, const d = { exchange: detail.exchange, amount: detail.amount, + suggested_exchange_url: detail.suggested_exchange_url }; const req = CreateReserveRequest.checked(d); return wallet.createReserve(req); @@ -403,6 +404,7 @@ function handleBankRequest(wallet: Wallet, headerList: chrome.webRequest.HttpHea .absoluteTo(url), bank_url: url, wt_types: wtTypes, + suggested_exchange_url: headers["x-taler-suggested-exchange"], }; let uri = URI(chrome.extension.getURL("/src/pages/confirm-create-reserve.html")); let redirectUrl = uri.query(params).href();