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:
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();