From 339c59ba118915cbe05b51b7e0909b45ea160ce1 Mon Sep 17 00:00:00 2001 From: Marcello Stanisci Date: Mon, 21 Mar 2016 16:41:40 +0100 Subject: moving here wallet papers forlder --- articles/ui/figs/taler-contract.js | 35 +++++++++++++++++++++++++++++++++++ 1 file changed, 35 insertions(+) create mode 100644 articles/ui/figs/taler-contract.js (limited to 'articles/ui/figs/taler-contract.js') diff --git a/articles/ui/figs/taler-contract.js b/articles/ui/figs/taler-contract.js new file mode 100644 index 000000000..aaf4b79c3 --- /dev/null +++ b/articles/ui/figs/taler-contract.js @@ -0,0 +1,35 @@ +/* Trigger Taler contract generation on the server, and pass the + contract to the extension once we got it. */ +function taler_pay(form) { + var contract_request = new XMLHttpRequest(); + + /* Note that the URL we give here is simply an example + and not dictated by the protocol: each web shop can + have its own way of generating and transmitting the + contract, there just must be a way to get the contract + and to pass it to the wallet when the user selects 'Pay'. */ + contract_request.open("GET", "generate-taler-contract", true); + contract_request.onload = function (e) { + if (contract_request.readyState == 4) { + if (contract_request.status == 200) { + /* Send contract to the extension. */ + handle_contract(contract_request.responseText); + } else { + /* There was an error obtaining the contract from the merchant, + obviously this should not happen. To keep it simple, we just + alert the user to the error. */ + alert("Failure to download contract " + + "(" + contract_request.status + "):\n" + + contract_request.responseText); + } + } + }; + contract_request.onerror = function (e) { + /* There was an error obtaining the contract from the merchant, + obviously this should not happen. To keep it simple, we just + alert the user to the error. */ + alert("Failure requesting the contract:\n" + + contract_request.statusText); + }; + contract_request.send(); +} -- cgit v1.2.3