Refactor code structure for improved readability and maintainability
This commit is contained in:
@@ -229,7 +229,7 @@ const buildListaModelli = (modelli, modello, categoria, sistema) => {
|
||||
|
||||
html += `<div class="d-inline btn-categoria">
|
||||
<a href="./?type=${m.id}&sistema=${sistema}">
|
||||
<img class="${selected}" src="./assets/data/icone/${m.id}.jpg" alt="${m.id}" />
|
||||
<img class="${selected}" src="${m.icona || ''}" alt="${m.id}" />
|
||||
</a>
|
||||
<p>${m.nome}</p>
|
||||
|
||||
|
||||
+11
-7
@@ -23,8 +23,6 @@ window.GLTFLoader = GLTFLoader; // Used by APP Scripts.
|
||||
|
||||
// --- Integrazione backend preventivi ---
|
||||
const CART_TOKEN_KEY = 'kreios_cart_token';
|
||||
// Ordine dei sistemi come nel menu: il primo è quello di default
|
||||
const SISTEMI = ['pvc', 'alluminio', 'legno', 'acciaio'];
|
||||
|
||||
// URL dell'app cliente (checkout): richiesto all'API invece di essere indovinato, perché la
|
||||
// porta Vite dell'app cliente può cambiare (es. se 5199 è già occupata). Fallback locale se
|
||||
@@ -138,15 +136,21 @@ $(() => {
|
||||
const start = async () => {
|
||||
const params = ParamsParser.getQueryParams();
|
||||
|
||||
// Senza sistema in query string si parte dal primo sistema (pvc)
|
||||
if (!SISTEMI.includes(params.sistema))
|
||||
params.sistema = SISTEMI[0];
|
||||
// Sistemi e modelli (con icone) sono serviti dal backoffice, già filtrati sui soli attivi
|
||||
// e nell'ordine del menu: il primo sistema è quello di default.
|
||||
const res = await fetch(`${PREVENTIVI_API_BASE}/sistemi`, { headers: { Accept: 'application/json' } });
|
||||
if (!res.ok) throw new Error(`Catalogo non disponibile (HTTP ${res.status})`);
|
||||
const sistemi = await res.json();
|
||||
if (!sistemi.length) throw new Error('Nessun sistema attivo nel catalogo');
|
||||
|
||||
const sistema = sistemi.find(s => s.codice === params.sistema) || sistemi[0];
|
||||
params.sistema = sistema.codice;
|
||||
|
||||
let data_folder = `./assets/data/sistemi/${params.sistema}`;
|
||||
let modello_folder = `./assets/data/modelli/${params.sistema}`;
|
||||
|
||||
|
||||
const modelli = await (await fetch(`${data_folder}/modelli.json?rnd=` + Math.random())).json();
|
||||
const modelli = sistema.modelli;
|
||||
if (!modelli.length) throw new Error(`Nessun modello attivo per il sistema ${sistema.codice}`);
|
||||
|
||||
let modello = modelli.find(m => m.id === params.type);
|
||||
|
||||
|
||||
Reference in New Issue
Block a user