Updated configurations for deployment

This commit is contained in:
MaddoScientisto 2026-04-12 15:21:33 +02:00
commit 7b30f17065
9 changed files with 396 additions and 214 deletions

View file

@ -114,6 +114,79 @@ function getCurrentLangValue() {
return $("html").attr("lang") || "it";
}
function faceAiFeatureEnabled() {
var config = window.faceAiConfig || {};
var simulatorConfig = window.faceAiSimulator || {};
var value = typeof config.enabled !== "undefined" ? config.enabled : simulatorConfig.enabled;
if (typeof value === "string") {
value = value.toLowerCase();
return value === "1" || value === "true" || value === "yes" || value === "on";
}
return value === true;
}
function faceAiEscapeHtml(value) {
return String(value || "")
.replace(/&/g, "&")
.replace(/</g, "&lt;")
.replace(/>/g, "&gt;")
.replace(/"/g, "&quot;")
.replace(/'/g, "&#39;");
}
function getFaceAiErrorState() {
if (typeof URLSearchParams === "undefined") {
return null;
}
var params = new URLSearchParams(window.location.search || "");
if (params.get("faceaiError") !== "1") {
return null;
}
return {
title: params.get("faceaiErrorTitle") || "Face ID non disponibile",
message: params.get("faceaiErrorMessage") || "Il servizio Face ID non e al momento disponibile. Riprova piu tardi."
};
}
function clearFaceAiErrorState() {
if (!window.history || !window.history.replaceState || typeof URL === "undefined") {
return;
}
var cleanUrl = new URL(window.location.href);
cleanUrl.searchParams.delete("faceaiError");
cleanUrl.searchParams.delete("faceaiErrorTitle");
cleanUrl.searchParams.delete("faceaiErrorMessage");
window.history.replaceState({}, document.title, cleanUrl.pathname + cleanUrl.search + cleanUrl.hash);
}
function showFaceAiErrorModal(title, message) {
var modal = $("#faceAiErrorModal");
if (!modal.length) {
$("body").append('<div class="modal fade" id="faceAiErrorModal" tabindex="-1" role="dialog" aria-labelledby="faceAiErrorModalLabel" aria-hidden="true"><div class="modal-dialog modal-sm" role="document"><div class="modal-content"><div class="modal-header"><h5 class="modal-title" id="faceAiErrorModalLabel"></h5><button type="button" class="close" data-dismiss="modal" aria-label="Close"><i class="fa fa-close"></i> </button></div><div class="modal-body text-center"><p id="faceAiErrorModalMessage" class="mb-0"></p></div></div></div></div>');
modal = $("#faceAiErrorModal");
}
$("#faceAiErrorModalLabel").html(faceAiEscapeHtml(title));
$("#faceAiErrorModalMessage").html(faceAiEscapeHtml(message));
modal.modal("show");
}
function initFaceAiErrorModal() {
var errorState = getFaceAiErrorState();
if (!errorState) {
return;
}
showFaceAiErrorModal(errorState.title, errorState.message);
clearFaceAiErrorState();
}
function buildFaceAiLaunchUrl() {
var raceId = $("#id_gara").val() || "";
var raceSlug = $("#garaDesc").val() || "";
@ -153,7 +226,7 @@ function launchFaceAi() {
function initFaceAiRaceSearchButton() {
var select = $("#tipoPuntoFoto");
if (!select.length || $("#faceaiLaunchButton").length) {
if (!select.length || $("#faceaiLaunchButton").length || !faceAiFeatureEnabled()) {
return;
}
@ -377,6 +450,7 @@ function goPage()
$(function() {
initFaceAiRaceSearchButton();
initFaceAiErrorModal();
});