diff --git a/extension/content_scripts/notify.js b/extension/content_scripts/notify.js index 4a5c47c01..4f399b7f9 100644 --- a/extension/content_scripts/notify.js +++ b/extension/content_scripts/notify.js @@ -3,18 +3,28 @@ 'use strict'; -// Listen to messages from the backend. -chrome.runtime.onMessage.addListener( - function(request, sender, sendResponse) { - // do nothing, yet -}); - -if (document && document.body) -{ +// Install our handshake handlers only once the +// document is loaded +// TODO: change the spec to do it on the body +document.addEventListener("DOMContentLoaded", function(e) { + console.log("DOM fully loaded and parsed"); document.body.addEventListener('taler-checkout-probe', function(e) { let evt = new Event('taler-wallet-present'); document.body.dispatchEvent(evt); + console.log("merchant handshake done"); }); -} + document.body.addEventListener('taler-wire-probe', function(e) { + let evt = new Event('taler-wallet-present'); + document.body.dispatchEvent(evt); + console.log("bank handshake done"); + }); + document.body.addEventListener('taler-create-reserve', function(e) { + console.log("reserve creation " + JSON.stringify(e.detail)); + chrome.runtime.sendMessage({action:'new-reserve-request', detail:e.detail}, function(resp) { + console.log("got response"); + document.location.href = resp.url; + }); + }); +}); console.log("Taler wallet: content page loaded"); diff --git a/testpages/testpage_merchant.html b/testpages/testpage_merchant.html index 1598cc046..0e9e784a0 100644 --- a/testpages/testpage_merchant.html +++ b/testpages/testpage_merchant.html @@ -2,12 +2,12 @@