2023-03-09 19:42:41 +01:00
|
|
|
<html>
|
|
|
|
<head>
|
|
|
|
<meta charset="utf-8">
|
|
|
|
<meta http-equiv="content-type" content="text/html; charset=UTF-8">
|
2023-03-12 22:31:11 +01:00
|
|
|
<link rel="icon" type="image/x-icon" href="http://127.0.0.1:8080/ipfs/QmQLQ5WdCEc7mpKw5rhUujUU1URKweei4Bb4esyVNd9Atx/favicon.ico">
|
2023-04-07 13:22:28 +02:00
|
|
|
<title>♥Box Ğ1Station - Astroport Ŋ1 - </title>
|
2023-03-12 22:31:11 +01:00
|
|
|
<link rel="stylesheet" href="http://127.0.0.1:8080/ipfs/QmQLQ5WdCEc7mpKw5rhUujUU1URKweei4Bb4esyVNd9Atx/G1PalPay_fichiers/demo.css">
|
|
|
|
|
2023-03-26 00:24:25 +01:00
|
|
|
<script src="http://127.0.0.1:8080/ipfs/QmYD4y1pXHVnGxxFcn2LWo84ytwmWdNbkyUeFnPCbrpUQy/openpgp.min.js"></script>
|
|
|
|
|
2023-04-15 15:45:23 +02:00
|
|
|
<script src="http://127.0.0.1:8080/ipfs/Qmae5v9zydax9u6C9ceDijURu5PYdd5avmv4NkenCw7RFv/astro.js"></script>
|
2023-03-12 22:31:11 +01:00
|
|
|
|
|
|
|
<script src="http://127.0.0.1:8080/ipfs/QmQLQ5WdCEc7mpKw5rhUujUU1URKweei4Bb4esyVNd9Atx/G1PalPay_fichiers/jquery-3.6.3.min.js"></script>
|
|
|
|
<script src="http://127.0.0.1:8080/ipfs/QmQLQ5WdCEc7mpKw5rhUujUU1URKweei4Bb4esyVNd9Atx/G1PalPay_fichiers/instascan.min.js"></script>
|
2023-03-10 00:57:16 +01:00
|
|
|
<link rel="stylesheet" href="http://127.0.0.1:8080/ipfs/QmaCh8mywWfxkXF3JziFzqZS6yZFo3eNS5fSfnzJqdSQvX/decoration.css" type="text/css" />
|
|
|
|
<link rel="stylesheet" href="http://127.0.0.1:8080/ipfs/QmaCh8mywWfxkXF3JziFzqZS6yZFo3eNS5fSfnzJqdSQvX/layout.css" type="text/css" />
|
2023-03-09 19:42:41 +01:00
|
|
|
<style>
|
|
|
|
|
|
|
|
body {
|
2023-03-10 00:57:16 +01:00
|
|
|
background-image:url("http://127.0.0.1:8080/ipfs/QmSFgatcq3q898J56epa8SyGbH651vRBFnv93kQSwfoi83/background.014.jpg");
|
2023-03-09 19:42:41 +01:00
|
|
|
background-repeat: no-repeat;
|
|
|
|
background-size: 100% 100%;
|
|
|
|
padding: 0;
|
|
|
|
margin: 0;
|
|
|
|
font-family: sans-serif;
|
|
|
|
}
|
|
|
|
html {
|
|
|
|
height: 100%
|
|
|
|
}
|
|
|
|
header {
|
|
|
|
opacity: 0.8;
|
|
|
|
}
|
|
|
|
input[type=submit] {
|
|
|
|
width: 12em; height: 4em;
|
|
|
|
}
|
|
|
|
input[type=checkbox] {
|
|
|
|
width: 2em; height: 2em;
|
|
|
|
}
|
|
|
|
input {
|
|
|
|
width: 26em; height: 2em;
|
|
|
|
}
|
2023-04-04 17:05:10 +02:00
|
|
|
#aframe {
|
|
|
|
background: white;
|
|
|
|
color: black;
|
|
|
|
}
|
2023-03-09 19:42:41 +01:00
|
|
|
#yellow {
|
2023-03-10 00:57:16 +01:00
|
|
|
background: black;
|
2023-04-04 17:05:10 +02:00
|
|
|
color: white;
|
2023-03-09 19:42:41 +01:00
|
|
|
position: absolute;
|
2023-03-10 00:57:16 +01:00
|
|
|
bottom: 2%;
|
|
|
|
left: 2%;
|
2023-04-28 14:46:49 +02:00
|
|
|
width: 60%;
|
2023-03-09 19:42:41 +01:00
|
|
|
visibility: hidden;
|
|
|
|
}
|
2023-04-28 14:46:49 +02:00
|
|
|
#ainfo {
|
|
|
|
position: absolute;
|
|
|
|
top: 2%;
|
|
|
|
left: 50%;
|
|
|
|
}
|
2023-03-09 19:42:41 +01:00
|
|
|
h1 {
|
|
|
|
margin-top: 10px;
|
|
|
|
font-size: 40px;
|
|
|
|
margin-bottom: 10px;
|
|
|
|
}
|
|
|
|
|
|
|
|
.subtitle {
|
|
|
|
font-size: 20px;
|
|
|
|
margin-bottom: 20px;
|
|
|
|
color: #777;
|
|
|
|
}
|
|
|
|
|
|
|
|
a {
|
|
|
|
color: white;
|
|
|
|
}
|
|
|
|
|
|
|
|
#demo {
|
|
|
|
overflow: hidden;
|
|
|
|
}
|
|
|
|
|
|
|
|
#description {
|
|
|
|
text-align: left;
|
|
|
|
float: left;
|
|
|
|
width: 49%;
|
|
|
|
max-width: 500px;
|
2023-03-15 20:35:10 +01:00
|
|
|
padding-top: 15px;
|
2023-03-09 19:42:41 +01:00
|
|
|
padding-left: 20px;
|
|
|
|
}
|
|
|
|
|
|
|
|
#showoff {
|
|
|
|
float: right;
|
|
|
|
width: 30%;
|
|
|
|
|
|
|
|
-webkit-touch-callout: none;
|
|
|
|
-webkit-user-select: none;
|
|
|
|
-khtml-user-select: none;
|
|
|
|
-moz-user-select: none;
|
|
|
|
-ms-user-select: none;
|
|
|
|
user-select: none;
|
|
|
|
}
|
|
|
|
|
|
|
|
#container {
|
2023-04-28 14:46:49 +02:00
|
|
|
top: 40px;
|
2023-03-15 20:35:10 +01:00
|
|
|
right: 0px;
|
|
|
|
position: absolute;
|
2023-03-09 19:42:41 +01:00
|
|
|
display: inline-block;
|
|
|
|
width: 400px;
|
|
|
|
height: 400px;
|
|
|
|
}
|
|
|
|
|
|
|
|
</style>
|
|
|
|
|
2023-03-02 23:48:47 +01:00
|
|
|
</head>
|
|
|
|
<body>
|
|
|
|
|
2023-03-09 19:42:41 +01:00
|
|
|
<div id="demo">
|
|
|
|
<div id="description">
|
2023-04-07 13:22:28 +02:00
|
|
|
<header>
|
2023-05-02 02:45:05 +02:00
|
|
|
<h1><a href="http://astroport.localhost:1234"><span>♥Box</span> Ğ1Station </a></h1><br>
|
2023-04-07 13:22:28 +02:00
|
|
|
</header>
|
2023-05-14 20:59:44 +02:00
|
|
|
<form method='get' action='http://127.0.0.1:33101' target='aframe'>
|
|
|
|
<input type='hidden' name='montant' value='0' >
|
|
|
|
<label for='type'>Type :</label><select name='type'>
|
|
|
|
<option value=''>G1BILLET+ ( x 6 )</option>
|
2023-07-03 03:04:45 +02:00
|
|
|
<option value='jeu' selected>G1CARD</option>
|
|
|
|
<option value='xastro'>G1CARD+TW</option>
|
|
|
|
<option value='@astroport'>G1CARD+@</option>
|
2023-05-14 20:59:44 +02:00
|
|
|
</select><input type='hidden' name='dice' value='6' >
|
|
|
|
<button type='submit'>Lancer Fabrication</button>
|
|
|
|
</form>
|
2023-04-15 21:59:50 +02:00
|
|
|
<h3>Oubliez la crise !</h3>
|
2023-04-04 20:33:01 +02:00
|
|
|
<h2>Utilisez la Monnaie Libre.</h2>
|
2023-04-25 14:50:40 +02:00
|
|
|
<h3>Explorez le Monde en confiance...</h3>
|
2023-03-09 19:42:41 +01:00
|
|
|
</div>
|
|
|
|
</div>
|
|
|
|
<div id="showoff">
|
|
|
|
<div id="container">
|
2023-03-02 23:48:47 +01:00
|
|
|
|
2023-03-18 14:55:45 +01:00
|
|
|
<video id="preview" style="transform: scaleX(-1);width: 240px;height: 240px;" autoplay="autoplay" class="active"></video>
|
2023-04-21 17:22:14 +02:00
|
|
|
|
2023-04-23 19:04:36 +02:00
|
|
|
<h1><div id="countdown">___</div></h1>
|
2023-05-14 20:59:44 +02:00
|
|
|
<input type="hidden" id="PASS" value="PASS"/>
|
2023-07-03 17:05:53 +02:00
|
|
|
<p><input type="text" id="g1pub" value="2L8vaYixCf97DMT8SistvQFeBj7vb6RQL7tvwyiv1XVH"/></p>
|
2023-04-21 17:22:14 +02:00
|
|
|
<p><b>G1PUB</b> destinataire</p>
|
|
|
|
|
2023-03-28 19:53:57 +02:00
|
|
|
<div id="appname">
|
2023-04-23 01:13:07 +02:00
|
|
|
<input type="radio" id="r0" name="appname" value="login"> Login(TW)
|
2023-04-23 02:00:34 +02:00
|
|
|
<input type="radio" id="r1" name="appname" value="friend"> ★★★★★
|
2023-03-28 19:53:57 +02:00
|
|
|
<input type="radio" id="r2" name="appname" value="history"> Historique
|
2023-04-21 04:00:19 +02:00
|
|
|
<input type="radio" id="r3" name="appname" value="pay"> Virement
|
2023-04-20 19:16:10 +02:00
|
|
|
<input type="radio" id="r3" name="appname" value="balance" checked="checked"> Balance
|
2023-03-28 19:53:57 +02:00
|
|
|
</div>
|
2023-07-03 03:04:45 +02:00
|
|
|
<p><b>G1CARD</b> opérateur</p>
|
2023-04-21 17:22:14 +02:00
|
|
|
|
2023-03-26 19:53:57 +02:00
|
|
|
<strong><div id="resu"></div></strong>
|
2023-04-21 17:22:14 +02:00
|
|
|
|
2023-04-20 03:56:28 +02:00
|
|
|
<p> <strong>Scanner QRCODE</strong> </p>
|
2023-04-21 17:22:14 +02:00
|
|
|
<p>fonctionne avec
|
2023-05-02 02:45:17 +02:00
|
|
|
<br>les portefeuilles "<a target="cesium" href="https://monnaie-libre.fr">Monnaie Libre Ğ1</a>"
|
|
|
|
(<a href="https://cesium.app/" target="cesium" >Cesium</a>)
|
2023-04-20 03:56:28 +02:00
|
|
|
<br>...
|
|
|
|
</p>
|
2023-03-09 19:42:41 +01:00
|
|
|
|
|
|
|
</div>
|
|
|
|
</div>
|
2023-04-28 14:46:49 +02:00
|
|
|
<a href="https://opencollective.com/monnaie-libre/" target="funding">- (^‿‿^) -</a>
|
2023-03-02 23:48:47 +01:00
|
|
|
<script type="text/javascript">
|
|
|
|
|
2023-03-10 00:57:16 +01:00
|
|
|
async function fetchAstroport(myURL) {
|
|
|
|
try {
|
|
|
|
|
2023-03-13 18:50:20 +01:00
|
|
|
let one = await fetch(myURL); // Gets a promise
|
|
|
|
var doc = await one.text();
|
|
|
|
var regex = /url='([^']+)/i; // Get response PORT
|
|
|
|
var redirectURL = doc.match(regex)[1]
|
2023-03-10 00:57:16 +01:00
|
|
|
|
2023-03-13 18:50:20 +01:00
|
|
|
console.log(redirectURL)
|
2023-03-10 00:57:16 +01:00
|
|
|
|
2023-03-13 18:50:20 +01:00
|
|
|
// start countdown
|
|
|
|
var timeLeft = 20;
|
|
|
|
var elem = document.getElementById("countdown");
|
|
|
|
var timerId = setInterval(countdown, 1000);
|
2023-03-13 04:26:59 +01:00
|
|
|
|
2023-03-13 18:50:20 +01:00
|
|
|
function countdown() {
|
|
|
|
if (timeLeft == -1) {
|
|
|
|
clearTimeout(timerId);
|
2023-05-15 20:57:47 +02:00
|
|
|
elem.innerHTML = "<a target='aframe' href='"+redirectURL+"'>OK</a>";
|
2023-03-10 00:57:16 +01:00
|
|
|
window.open( redirectURL, "AstroTab");
|
2023-03-13 18:50:20 +01:00
|
|
|
} else {
|
|
|
|
elem.innerHTML = timeLeft + " s";
|
|
|
|
timeLeft--;
|
|
|
|
}
|
|
|
|
}
|
2023-03-10 00:57:16 +01:00
|
|
|
|
|
|
|
} catch (err) {
|
|
|
|
console.log('Fetch error:' + err); // Error handling
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
2023-03-02 23:48:47 +01:00
|
|
|
let scanner = new Instascan.Scanner({ video: document.getElementById('preview') });
|
2023-03-10 00:57:16 +01:00
|
|
|
|
2023-03-02 23:48:47 +01:00
|
|
|
scanner.addListener('scan', function (content) {
|
2023-03-13 18:50:20 +01:00
|
|
|
alert(content);
|
2023-03-28 16:07:54 +02:00
|
|
|
if (content.startsWith('~~~~~')) {
|
2023-03-28 19:53:57 +02:00
|
|
|
// GET APPNAME
|
|
|
|
var appname = document.querySelector('input[name="appname"]:checked').value;
|
2023-05-14 20:59:44 +02:00
|
|
|
|
|
|
|
// GET PASS TO DECODE PGP
|
|
|
|
var oldpass = document.getElementById("PASS").value;
|
|
|
|
if ( oldpass == 'PASS') {
|
|
|
|
var pass = prompt("Saisir PASS:");
|
|
|
|
} else {
|
|
|
|
var pass = oldpass;
|
|
|
|
}
|
2023-04-21 04:00:19 +02:00
|
|
|
|
2023-04-24 20:53:44 +02:00
|
|
|
// PREVIOUS G1PUB SCAN
|
|
|
|
var g1pub = document.getElementById("g1pub").value;
|
2023-04-21 04:00:19 +02:00
|
|
|
|
2023-05-14 20:59:44 +02:00
|
|
|
// MEMORIZE
|
|
|
|
if ( appname == 'pay') {
|
|
|
|
document.getElementById("PASS").value = pass;
|
|
|
|
} else {
|
|
|
|
document.getElementById("PASS").value = "PASS";
|
|
|
|
}
|
|
|
|
|
2023-04-21 04:00:19 +02:00
|
|
|
// APPNAME : DATA COLLECT & ARRANGE
|
2023-03-28 19:53:57 +02:00
|
|
|
if ( appname == 'pay') {
|
2023-04-23 02:00:34 +02:00
|
|
|
var amount = prompt("MONTANT (Ğ1) ?");
|
2023-04-21 04:00:19 +02:00
|
|
|
alert('PAY TO ' + g1pub + ' = ' + amount);
|
2023-03-28 19:53:57 +02:00
|
|
|
}
|
2023-04-21 04:00:19 +02:00
|
|
|
|
2023-04-23 02:00:34 +02:00
|
|
|
if ( appname == 'friend') {
|
|
|
|
var amount = prompt("Entre 1 et 5 (★) ?");
|
2023-04-23 17:40:38 +02:00
|
|
|
alert( amount + '★ > ' + g1pub );
|
2023-04-23 02:00:34 +02:00
|
|
|
}
|
|
|
|
|
2023-04-19 22:57:23 +02:00
|
|
|
if ( appname == 'login') {
|
|
|
|
var amount = prompt("Saisir EMAIL:");
|
2023-04-20 19:16:10 +02:00
|
|
|
}
|
|
|
|
|
2023-04-21 04:00:19 +02:00
|
|
|
if ( amount == 'undefined' || amount == '' ) {
|
|
|
|
var amount = document.getElementById("g1pub").value;
|
2023-03-28 16:07:54 +02:00
|
|
|
}
|
2023-04-21 04:00:19 +02:00
|
|
|
|
|
|
|
var myU = 'http://astroport.localhost:1234/?qrcode=' + content +'&pass=' + pass + '&' + appname + '=' + amount + '&g1pub=' + g1pub ;
|
2023-03-31 18:57:16 +02:00
|
|
|
console.log(myU);
|
2023-04-24 20:53:44 +02:00
|
|
|
|
|
|
|
if ( appname == 'login') {
|
|
|
|
homeAstroportStation(myU, 'tab', 5000)
|
|
|
|
} else {
|
2023-06-30 01:46:15 +02:00
|
|
|
homeAstroportStation(myU, 'aframe', 12000)
|
2023-04-24 20:53:44 +02:00
|
|
|
}
|
2023-03-31 18:57:16 +02:00
|
|
|
|
2023-03-26 00:24:25 +01:00
|
|
|
} else {
|
2023-04-21 04:00:19 +02:00
|
|
|
|
|
|
|
// COPY QRCODE IN g1pub input
|
|
|
|
document.getElementById("g1pub").value = content;
|
|
|
|
// document.getElementById("resu").innerHTML = content;
|
2023-03-26 00:24:25 +01:00
|
|
|
var myU = 'http://astroport.localhost:1234/?qrcode=' + content;
|
2023-03-31 18:57:16 +02:00
|
|
|
console.log(myU);
|
2023-06-30 01:46:15 +02:00
|
|
|
homeAstroportStation(myU, 'aframe', 12000)
|
2023-03-26 00:24:25 +01:00
|
|
|
}
|
2023-03-31 18:57:16 +02:00
|
|
|
|
|
|
|
|
2023-03-28 16:07:54 +02:00
|
|
|
|
|
|
|
// fetchAstroport(myU)
|
2023-03-26 03:50:17 +02:00
|
|
|
|
2023-03-02 23:48:47 +01:00
|
|
|
});
|
|
|
|
|
|
|
|
Instascan.Camera.getCameras().then(function (cameras) {
|
|
|
|
|
|
|
|
if (cameras.length > 0) {
|
|
|
|
|
|
|
|
scanner.start(cameras[0]);
|
|
|
|
|
|
|
|
} else {
|
|
|
|
|
|
|
|
console.error('No cameras found.');
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
}).catch(function (e) {
|
|
|
|
|
|
|
|
console.error(e);
|
|
|
|
|
|
|
|
});
|
|
|
|
|
|
|
|
</script>
|
2023-03-28 16:07:54 +02:00
|
|
|
<h1><button id="ainfo" onclick="javascript:var x = document.getElementById('yellow'); if (x.style.visibility === 'hidden') {x.style.visibility = 'visible';} else {x.style.visibility = 'hidden';}">0/1</button></h1>
|
2023-04-15 15:04:00 +02:00
|
|
|
<div id="yellow" ><a href="_STATION_" target="aframe">MENU</a>
|
2023-04-20 03:56:28 +02:00
|
|
|
<iframe name="aframe" id="aframe" src="_STATION_" width="100%" height="320px"></iframe>
|
2023-03-10 00:57:16 +01:00
|
|
|
</div>
|
2023-03-09 19:42:41 +01:00
|
|
|
|
2023-03-10 00:57:16 +01:00
|
|
|
<script>
|
2023-03-27 17:26:19 +02:00
|
|
|
|
|
|
|
let cookies = document.cookie;
|
|
|
|
console.log(cookies);
|
|
|
|
|
2023-03-10 00:57:16 +01:00
|
|
|
const el = document.getElementById('yellow');
|
2023-03-02 23:48:47 +01:00
|
|
|
|
2023-03-10 00:57:16 +01:00
|
|
|
setTimeout(() => {
|
|
|
|
el.style.visibility = 'visible';
|
2023-03-22 16:48:15 +01:00
|
|
|
}, 3000); // 👈️ delay in milliseconds
|
2023-03-10 00:57:16 +01:00
|
|
|
|
|
|
|
</script>
|
2023-04-28 03:30:07 +02:00
|
|
|
<!-- Matomo -->
|
|
|
|
<script>
|
|
|
|
var _paq = window._paq = window._paq || [];
|
|
|
|
/* tracker methods like "setCustomDimension" should be called before "trackPageView" */
|
|
|
|
_paq.push(['trackPageView']);
|
|
|
|
_paq.push(['enableLinkTracking']);
|
|
|
|
(function() {
|
|
|
|
var u="//g1sms.fr/matomo/";
|
|
|
|
_paq.push(['setTrackerUrl', u+'matomo.php']);
|
|
|
|
_paq.push(['setSiteId', '1']);
|
|
|
|
var d=document, g=d.createElement('script'), s=d.getElementsByTagName('script')[0];
|
|
|
|
g.async=true; g.src=u+'matomo.js'; s.parentNode.insertBefore(g,s);
|
|
|
|
})();
|
|
|
|
</script>
|
|
|
|
<!-- End Matomo Code -->
|
2023-03-02 23:48:47 +01:00
|
|
|
|
2023-03-08 17:00:53 +01:00
|
|
|
</body></html>
|