Add Aztec Code Generation

This commit is contained in:
naielv
2025-08-11 21:48:39 +02:00
parent 57171963be
commit 09fa34007b
5 changed files with 84 additions and 253 deletions

View File

@@ -1,252 +0,0 @@
<!DOCTYPE html>
<html lang="es">
<head>
<meta charset="UTF-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<link rel="manifest" href="manifest.json" />
<title>TeleSec</title>
<link rel="icon" type="image/png" href="static/TeleSec.jpg" />
<link href="static/euskaditech-css/simple.css" rel="stylesheet" />
<link href="static/toastr.min.css" rel="stylesheet" />
<link rel="prefetch" href="icon512_maskable.png" />
<link rel="prefetch" href="icon512_rounded.png" />
<link rel="prefetch" href="manifest.json" />
<link rel="prefetch" href="static/axe.js" />
<link rel="prefetch" href="static/doublescroll.js" />
<link rel="prefetch" href="static/gun.js" />
<link rel="prefetch" href="static/jquery.js" />
<link rel="prefetch" href="static/load.js" />
<link rel="prefetch" href="static/open.js" />
<link rel="prefetch" href="static/path.js" />
<link rel="prefetch" href="static/radisk.js" />
<link rel="prefetch" href="static/radix.js" />
<link rel="prefetch" href="static/rindexed.js" />
<link rel="prefetch" href="static/sea.js" />
<link rel="prefetch" href="static/showdown.min.js" />
<link rel="prefetch" href="static/simplemde.min.css" />
<link rel="prefetch" href="static/simplemde.min.js" />
<link rel="prefetch" href="static/store.js" />
<link rel="prefetch" href="static/synchronous.js" />
<link rel="prefetch" href="static/TeleSec.jpg" />
<link rel="prefetch" href="static/toastr.min.css" />
<link rel="prefetch" href="static/toastr.min.js" />
<link rel="prefetch" href="static/webrtc.js" />
<link rel="prefetch" href="static/yson.js" />
<link rel="prefetch" href="static/ico/add.png" />
<link rel="prefetch" href="static/ico/azucar-moreno.png" />
<link rel="prefetch" href="static/ico/azucar-blanco.jpg" />
<link rel="prefetch" href="static/ico/stevia.jpg" />
<link rel="prefetch" href="static/ico/stevia-gotas.webp" />
<link rel="prefetch" href="static/ico/sacarina.jpg" />
<link rel="prefetch" href="static/ico/arrow_down_blue.png" />
<link rel="prefetch" href="static/ico/arrow_left_green.png" />
<link rel="prefetch" href="static/ico/arrow_up_red.png" />
<link rel="prefetch" href="static/ico/camera2.png" />
<link rel="prefetch" href="static/ico/cereales.png" />
<link rel="prefetch" href="static/ico/checkbox.png" />
<link rel="prefetch" href="static/ico/checkbox_unchecked.png" />
<link rel="prefetch" href="static/ico/connect_ok.svg" />
<link rel="prefetch" href="static/ico/connect_ko.svg" />
<link rel="prefetch" href="static/ico/coffee_bean.png" />
<link rel="prefetch" href="static/ico/colacao.jpg" />
<link rel="prefetch" href="static/ico/cookies.png" />
<link rel="prefetch" href="static/ico/cow.png" />
<link rel="prefetch" href="static/ico/delete.png" />
<link rel="prefetch" href="static/ico/fire.png" />
<link rel="prefetch" href="static/ico/keyboard_key_g.png" />
<link rel="prefetch" href="static/ico/keyboard_key_p.png" />
<link rel="prefetch" href="static/ico/lollipop.png" />
<link rel="prefetch" href="static/ico/milk.png" />
<link rel="prefetch" href="static/ico/preferences.png" />
<link rel="prefetch" href="static/ico/sizes.png" />
<link rel="prefetch" href="static/ico/statusok.png" />
<link rel="prefetch" href="static/ico/snowflake.png" />
<link rel="prefetch" href="static/ico/tea_bag.png" />
<link rel="prefetch" href="static/ico/thermometer2.png" />
<link rel="prefetch" href="static/ico/user.png" />
<link rel="prefetch" href="static/ico/user_generic.png" />
<link rel="prefetch" href="static/ico/water_tap.png" />
<link rel="prefetch" href="static/ico/wheat.png" />
<link rel="prefetch" href="static/ico/layered1/Azucar-Az. Blanco.png" />
<link rel="prefetch" href="static/ico/layered1/Azucar-Az. Moreno.png" />
<link rel="prefetch" href="static/ico/layered1/Azucar-Edulcorante.png" />
<link rel="prefetch" href="static/ico/layered1/Azucar-Sacarina.png" />
<link rel="prefetch" href="static/ico/layered1/Azucar-Sin.png" />
<link rel="prefetch" href="static/ico/layered1/Azucar-Stevia (Gotas).png" />
<link rel="prefetch" href="static/ico/layered1/Azucar-Stevia (Pastillas).png" />
<link rel="prefetch" href="static/ico/layered1/Background.png" />
<link rel="prefetch" href="static/ico/layered1/Cafeina-Con.png" />
<link rel="prefetch" href="static/ico/layered1/Cafeina-Sin.png" />
<link rel="prefetch" href="static/ico/layered1/Leche-Agua.png" />
<link rel="prefetch" href="static/ico/layered1/Leche-Sin lactosa.png" />
<link rel="prefetch" href="static/ico/layered1/Leche-Vegetal.png" />
<link rel="prefetch" href="static/ico/layered1/Leche-de Vaca.png" />
<link rel="prefetch" href="static/ico/layered1/Selección-CafeSolo.png" />
<link rel="prefetch" href="static/ico/layered1/Selección-CaféLeche.png" />
<link rel="prefetch" href="static/ico/layered1/Selección-ColaCao.png" />
<link rel="prefetch" href="static/ico/layered1/Selección-Infusion.png" />
<link rel="prefetch" href="static/ico/layered1/Selección-Leche.png" />
<link rel="prefetch" href="static/ico/layered1/Tamaño-Grande.png" />
<link rel="prefetch" href="static/ico/layered1/Tamaño-Pequeño.png" />
<link rel="prefetch" href="static/ico/layered1/Temperatura-Caliente.png" />
<link rel="prefetch" href="static/ico/layered1/Temperatura-Frio.png" />
<link rel="prefetch" href="static/ico/layered1/Temperatura-Templado.png" />
<link rel="prefetch" href="page__supercafe.js" />
<link rel="prefetch" href="app_logic.js" />
<link rel="prefetch" href="page__index.js" />
<link rel="prefetch" href="page__notificaciones.js" />
<link rel="prefetch" href="page__materiales.js" />
<link rel="prefetch" href="index.html" />
<link rel="prefetch" href="page__exportar.js" />
<link rel="prefetch" href="gun_init.js" />
<link rel="prefetch" href="page__personas.js" />
<link rel="prefetch" href="page__importar.js" />
<link rel="prefetch" href="config.js" />
<link rel="prefetch" href="app_modules.js" />
<link rel="prefetch" href="page__comedor.js" />
<link rel="prefetch" href="page__resumen_diario.js" />
<link rel="prefetch" href="pwa.js" />
</head>
<body>
<details class="supermesh-indicator">
<summary>
<b>SuperMesh</b><br />
<br /><small id="peerPID" style="font-family: monospace"
>PID ??????????</small
>
</summary>
<ul id="peerList"></ul>
<i>Todos los datos están encriptados.</i>
</details>
<main>
<header class="no_print" id="header_hide_query">
<details id="LinkAccount_details" open>
<summary>
<b
>TeleSec - <span id="groupId">???</span> - (<span id="peerCount"
>?</span
>
nodos)</b
>
</summary>
<fieldset id="auth_fieldSet">
<legend>Credenciales</legend>
<br />
<label
>Codigo de grupo:<br />
<input type="text" id="LinkAccount_group"
/></label>
<br />
<br />
<label
>Clave secreta:<br />
<input type="text" id="LinkAccount_secret"
/></label>
<br /><br />
<button
type="button"
onclick='LinkAccount(document.getElementById("LinkAccount_group").value, document.getElementById("LinkAccount_secret").value, true)'
>
Iniciar sesión
</button>
</fieldset>
</details>
<!-- <button onclick="displayPost('index')">Ir a la pagina de inicio</button> -->
<div id="appendApps">
<!--<a class="button nav-supercafe nav-disabled" disabled>SuperCafé</a>
<a class="button nav-comedor nav-disabled" disabled>Menú Comedor</a>
<a class="button nav-recetas nav-disabled" disabled>Recetas</a>-->
</div>
<hr />
</header>
<div id="container"></div>
<!-- <br><br><br>
<footer>
<hr>
<details>
<summary><b>Apps SuperMesh</b></summary>
<button type="button">
<img src="static/TeleSec.jpg" alt="" width="100px">
<br>TeleSec
</button>
</details>
</footer> -->
<img
id="connectStatus"
style="bottom: 15px; right: 15px; position: fixed; width: 50px"
/>
</main>
<img
id="actionStatus"
src="static/ico/statusok.png"
style="
z-index: 2048;
margin: 0px;
position: fixed;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
width: 100px;
height: 100px;
display: none;
"
/>
<div id="snackbar">
Hay una nueva versión de TeleSec.<br /><a id="reload"
>Pulsa aqui para actualizar.</a
>
</div>
<script src="static/showdown.min.js"></script>
<script src="static/jquery.js"></script>
<script src="static/gun.js"></script>
<script src="static/webrtc.js"></script>
<script src="static/sea.js"></script>
<script src="static/yson.js"></script>
<script src="static/radix.js"></script>
<!-- <script src="static/radisk.js"></script> -->
<!-- <script src="static/store.js"></script> -->
<script src="static/rindexed.js"></script>
<script src="static/path.js"></script>
<script src="static/open.js"></script>
<script src="static/load.js"></script>
<!--<script src="static/synchronous.js"></script>-->
<!--<script src="static/axe.js"></script>-->
<script src="static/toastr.min.js"></script>
<script src="static/doublescroll.js"></script>
<!--<script src="static/simplemde.min.js"></script>-->
<script async>
async function getQuota(cb = () => {}) {
if (navigator.storage && navigator.storage.estimate) {
const quota = await navigator.storage.estimate();
// quota.usage -> Number of bytes used.
// quota.quota -> Maximum number of bytes available.
const percentageUsed = (quota.usage / quota.quota) * 100;
console.log(
`You've used ${percentageUsed}% of the available storage.`
);
const remaining = quota.quota - quota.usage;
cb(percentageUsed, remaining);
console.log(`You can write up to ${remaining} more bytes.`);
}
}
getQuota();
</script>
<script src="pwa.js"></script>
<script src="config.js"></script>
<script src="gun_init.js"></script>
<script src="app_logic.js"></script>
<script src="app_modules.js"></script>
<script src="page__index.js"></script>
<script src="page__importar.js"></script>
<script src="page__exportar.js"></script>
<script src="page__materiales.js"></script>
<script src="page__resumen_diario.js"></script>
<script src="page__personas.js"></script>
<script src="page__supercafe.js"></script>
<script src="page__notificaciones.js"></script>
<script src="page__comedor.js"></script>
</body>
</html>

70
assets/static/qrcode/bwip-js-min.js vendored Normal file

File diff suppressed because one or more lines are too long

View File

@@ -989,6 +989,17 @@ function TS_IndexElement(
} }
}); });
} }
function BuildQR(mid) {
let svg = bwipjs.toSVG({
bcid: 'azteccode', // Barcode type
text: mid, // Text to encode
height: 12, // Bar height, in millimeters
includetext: true, // Show human-readable text
textxalign: 'center', // Always good to set this
textcolor: 'ff0000', // Red text
});
return `<span style="display: inline-block; height: 300px; width: 300px;">${svg}</span>`
}
const PAGES = {}; const PAGES = {};
function SetPages() { function SetPages() {

View File

@@ -102,6 +102,7 @@
> >
</div> </div>
<script src="static/showdown.min.js"></script> <script src="static/showdown.min.js"></script>
<script src="static/qrcode/bwip-min.js"></script>
<script src="static/jquery.js"></script> <script src="static/jquery.js"></script>
<script src="static/gun.js"></script> <script src="static/gun.js"></script>
<script src="static/webrtc.js"></script> <script src="static/webrtc.js"></script>

View File

@@ -14,7 +14,8 @@ PAGES.materiales = {
var btn_guardar = safeuuid(); var btn_guardar = safeuuid();
var btn_borrar = safeuuid(); var btn_borrar = safeuuid();
container.innerHTML = ` container.innerHTML = `
<h1>Material <code id="${nameh1}"></code></h1> <h1>Material <code id="${nameh1}"></code></h1><br>
${BuildQR(mid)}
<fieldset> <fieldset>
<label> <label>
Referencia<br> Referencia<br>