2016-09-30 00:53:01 +02:00
|
|
|
|
<!doctype html>
|
|
|
|
|
<html>
|
|
|
|
|
<head>
|
|
|
|
|
<title>Contract playground</title>
|
|
|
|
|
<meta charset="UTF-8">
|
|
|
|
|
<script src="../lib/vendor/mithril.js"></script>
|
|
|
|
|
<script src="../lib/i18n.js"></script>
|
|
|
|
|
<script src="../lib/vendor/system-csp-production.src.js"></script>
|
|
|
|
|
<script type="application/javascript">
|
|
|
|
|
var contract = {
|
|
|
|
|
"H_wire": "ADVPV6Q9P0GF74CD5H5ENYCC862AM34ZS93JDQR2G09SR8868YMPYCVQP8WGGVVYZDY2ZMG703TQESN837VBAEDCGMS2D2RADKFKW08",
|
|
|
|
|
"amount": {
|
|
|
|
|
"currency": "KUDOS", "fraction": 100000, "value": 0
|
|
|
|
|
}
|
|
|
|
|
,
|
|
|
|
|
"auditors": [{
|
|
|
|
|
"auditor_pub": "ERFPOJ0FRKRLM909ILKDETS04Y2QCKMMCFHZSWJWWVN82BTTH00",
|
|
|
|
|
"auditor_url": "https://auditor.example.gov/",
|
|
|
|
|
"denomination_keys": [{"denom_pub_h": "ERFPOJ0FRKRLM909ILKDETS04Y2QCKMMCFHZSWJWWVN82BTTH00",
|
2016-09-30 01:04:14 +02:00
|
|
|
|
"auditor_sig": "XPROFERPOJERVJPROJ45ETS04Y2QCKMMCFHZSWJWWVN82BTTH00"}]
|
2016-09-30 00:53:01 +02:00
|
|
|
|
},
|
|
|
|
|
{
|
|
|
|
|
"auditor_pub": "09FGKJ0FRKRLM909ILKDETS04Y2QCKMMCFHZSWJWWVN82BTTH00",
|
|
|
|
|
"auditor_url": "https://auditor-alt.example.gov/",
|
2016-09-30 01:04:14 +02:00
|
|
|
|
"denomination_keys": [{"denom_pub_h": "RCC0U8KPOKN76PO9ILKDETS04Y2QCKMMCFHZSWJWWVN82BTTH00",
|
|
|
|
|
"auditor_sig": "VBOOP575JJWRVJPROJ45ETS04Y2QCKMMCFHZSWJWWVN82BTTH00"}]
|
2016-09-30 00:53:01 +02:00
|
|
|
|
}
|
|
|
|
|
],
|
|
|
|
|
"exchanges": [{
|
|
|
|
|
"master_pub": "CQQZ9DY3MZ1ARMN5K1VKDETS04Y2QCKMMCFHZSWJWWVN82BTTH00",
|
|
|
|
|
"url": "https://exchange.demo.taler.net/"
|
|
|
|
|
},
|
|
|
|
|
{
|
|
|
|
|
"master_pub": "OIJ23JIO4Z1ARMN5K1VKDETS04Y2QCKMMCFHZSWJWWVN82BTTH00",
|
|
|
|
|
"url": "https://exchange.example.com/"
|
|
|
|
|
}],
|
|
|
|
|
"expiry": "/Date(1483798537)/",
|
|
|
|
|
"fulfillment_url": "https://playground-purchase.example.com/fulfillment?x=123",
|
|
|
|
|
"locations": {"LOC0": {"country": "France",
|
|
|
|
|
"city": "Bordeaux",
|
|
|
|
|
"region": "Nouvelle-Aquitaine",
|
|
|
|
|
"province": "Gironde",
|
|
|
|
|
"zip_code": "33000",
|
|
|
|
|
"street": "Pas connu",
|
|
|
|
|
"street_number": 8},
|
|
|
|
|
"LOC1": {"country": "USA",
|
|
|
|
|
"city": "La Fayette",
|
|
|
|
|
"state": "Louisiana",
|
|
|
|
|
"zip_code": "70508",
|
|
|
|
|
"street": "Not given",
|
|
|
|
|
"street_number": 8}}
|
|
|
|
|
,
|
|
|
|
|
"max_fee": {
|
|
|
|
|
"currency": "KUDOS", "fraction": 0, "value": 3
|
|
|
|
|
}
|
|
|
|
|
,
|
|
|
|
|
"merchant": {
|
|
|
|
|
"address": "nowhere", "jurisdiction": "none", "name": "Kudos Inc."
|
|
|
|
|
}
|
|
|
|
|
,
|
|
|
|
|
"merchant_pub": "9K5V0G537N2RPKGQVYV2Q9WBS8R7QB93RTC7BJF1YE6XQQQ6BS2G",
|
|
|
|
|
"products": [{
|
|
|
|
|
"description": "Essay: 7. Why Schools Should Exclusively Use Free Software",
|
|
|
|
|
"price": {"currency": "KUDOS", "fraction": 100000, "value": 0},
|
|
|
|
|
"product_id": 0,
|
|
|
|
|
"quantity": 1
|
|
|
|
|
},
|
|
|
|
|
{
|
|
|
|
|
"description": "E-reader for playground reads",
|
|
|
|
|
"price": {"currency": "KUDOS", "fraction": 100000, "value": 10},
|
|
|
|
|
"product_id": 9,
|
|
|
|
|
"quantity": 3,
|
|
|
|
|
"taxes": [{"teatax": {"currency": "KUDOS", "fraction": 1000, "value": 0}},
|
|
|
|
|
{"IVA": {"currency": "KUDOS", "fraction": 1000, "value": 0}}],
|
|
|
|
|
"delivery_date": "/Date(1475148537)/",
|
|
|
|
|
"delivery_location": "LOC1"
|
|
|
|
|
},
|
|
|
|
|
{
|
|
|
|
|
"description": "Fancy playground bookmark",
|
|
|
|
|
"price": {"currency": "KUDOS", "fraction": 500000, "value": 0},
|
|
|
|
|
"product_id": 4,
|
|
|
|
|
"quantity": 1,
|
|
|
|
|
"taxes": [{"IMP": {"currency": "KUDOS", "fraction": 3000, "value": 0}},
|
|
|
|
|
{"EUX": {"currency": "KUDOS", "fraction": 10, "value": 0}}],
|
|
|
|
|
"delivery_date": "/Date(1475138597)/",
|
|
|
|
|
"delivery_location": "LOC1"
|
|
|
|
|
}],
|
|
|
|
|
"refund_deadline": "/Date(1475158537)/",
|
|
|
|
|
"timestamp": "/Date(1475158537)/",
|
|
|
|
|
"transaction_id": 501210171398673
|
|
|
|
|
};
|
|
|
|
|
</script>
|
|
|
|
|
</head>
|
|
|
|
|
<body>
|
|
|
|
|
<div id="container"></div>
|
|
|
|
|
<script>
|
|
|
|
|
"use strict";
|
|
|
|
|
System.config({
|
|
|
|
|
defaultJSExtensions: true,
|
|
|
|
|
});
|
|
|
|
|
|
|
|
|
|
document.addEventListener("DOMContentLoaded", () => {
|
|
|
|
|
System.import("../lib/wallet/renderHtml")
|
|
|
|
|
.then((render) => {
|
|
|
|
|
let r = render.renderContract(contract);
|
|
|
|
|
let component = {view: function () {return r;}}
|
|
|
|
|
m.mount(document.getElementById("container"), component);
|
|
|
|
|
}
|
|
|
|
|
)
|
|
|
|
|
.catch((e) => {
|
|
|
|
|
console.error(e.stack);
|
|
|
|
|
});
|
|
|
|
|
});
|
|
|
|
|
</script>
|
|
|
|
|
</body>
|
|
|
|
|
</html>
|