From 276f9108ab1dac3b7fc6670b1061f8cf7809785a Mon Sep 17 00:00:00 2001 From: Florian Dold Date: Wed, 16 Dec 2015 10:45:16 +0100 Subject: missing files --- extension/pages/confirm-contract.js | 39 +++++++++++++++++++++++++++++++++++++ 1 file changed, 39 insertions(+) create mode 100644 extension/pages/confirm-contract.js (limited to 'extension/pages/confirm-contract.js') diff --git a/extension/pages/confirm-contract.js b/extension/pages/confirm-contract.js new file mode 100644 index 000000000..fe16bcbca --- /dev/null +++ b/extension/pages/confirm-contract.js @@ -0,0 +1,39 @@ +/// +"use strict"; +let url = URI(document.location.href); +let query = URI.parseQuery(url.query()); +let $_ = (x) => document.getElementById(x); +function renderContract(contract) { + let showAmount = document.getElementById("show-amount"); + $_('merchant-name').innerText = contract.merchant.name; +} +function clone(obj) { + // This is faster than it looks ... + return JSON.parse(JSON.stringify(obj)); +} +Handlebars.registerHelper('prettyAmount', function (amount) { + let v = amount.value + amount.fraction / 10e6; + return v.toFixed(2) + " " + amount.currency; +}); +document.addEventListener("DOMContentLoaded", (e) => { + let contract = JSON.parse(query.contract); + console.dir(contract); + let source = $_("contract-template").innerHTML; + let template = Handlebars.compile(source); + let html = template(contract.contract); + $_("render-contract").innerHTML = html; + document.getElementById("confirm-purchase").addEventListener("click", (e) => { + let d = clone(query); + chrome.runtime.sendMessage({ type: 'confirm-purchase', detail: d }, (resp) => { + if (resp.success === true) { + document.location.href = resp.backlink; + } + else { + document.body.innerHTML = + `Oops, something went wrong. + Here is some more info: +
${resp.text}
`; + } + }); + }); +}); -- cgit v1.2.3