fix qr code

This commit is contained in:
larssand
2026-09-03 20:21:36 +02:00
parent 2d56b74731
commit 1e33e1fffc
2 changed files with 13 additions and 6 deletions

View File

@@ -29,6 +29,8 @@ function renderStintRow(row, { t, escapeHtml, formatLap, formatRaceClock }) {
export function renderTrainingView(deps) {
const moreStatsWasOpen = Boolean(document.getElementById("trainingMoreStats")?.open);
const goalsSharingElement = document.getElementById("trainingGoalsSharing");
const goalsSharingWasOpen = goalsSharingElement ? goalsSharingElement.open : true;
const {
state,
dom,
@@ -38,6 +40,7 @@ export function renderTrainingView(deps) {
formatRaceClock,
uid,
saveState,
syncStateToBackend,
renderView,
normalizeTrainingState,
syncTrainingLedger,
@@ -420,7 +423,7 @@ export function renderTrainingView(deps) {
` : ""}
<div class="training-secondary">
<details class="training-disclosure">
<details class="training-disclosure" id="trainingGoalsSharing" ${goalsSharingWasOpen ? "open" : ""}>
<summary>
<span><strong>${escapeHtml(t("training.manage_goals_sharing"))}</strong><small>${escapeHtml(t("training.manage_goals_sharing_hint"))}</small></span>
<span class="training-disclosure-arrow">+</span>
@@ -700,7 +703,7 @@ export function renderTrainingView(deps) {
});
});
document.getElementById("trainingPublicBaseSave")?.addEventListener("click", () => {
document.getElementById("trainingPublicBaseSave")?.addEventListener("click", async () => {
const input = document.getElementById("trainingPublicBaseUrl");
const normalized = normalizePublicBaseUrl(input?.value);
if (input?.value && !normalized) {
@@ -709,6 +712,7 @@ export function renderTrainingView(deps) {
}
state.settings.publicBaseUrl = normalized;
saveState();
await syncStateToBackend();
renderView();
});
document.getElementById("trainingPublicAddressDetect")?.addEventListener("click", async () => {
@@ -725,9 +729,10 @@ export function renderTrainingView(deps) {
if (status) status.textContent = t("training.detect_public_ip_failed");
}
});
document.getElementById("trainingPublicProfileEnable")?.addEventListener("click", () => {
document.getElementById("trainingPublicProfileEnable")?.addEventListener("click", async () => {
replacePublicProfileShare(state, selectedProfileId, profileReferences);
saveState();
await syncStateToBackend();
renderView();
});
document.getElementById("trainingPublicProfileCopy")?.addEventListener("click", async () => {
@@ -736,15 +741,17 @@ export function renderTrainingView(deps) {
document.getElementById("trainingPublicProfileOpen")?.addEventListener("click", () => {
window.open(publicProfileUrl, "_blank", "noopener,noreferrer");
});
document.getElementById("trainingPublicProfileRotate")?.addEventListener("click", () => {
document.getElementById("trainingPublicProfileRotate")?.addEventListener("click", async () => {
if (!confirm(t("training.replace_link_confirm"))) return;
replacePublicProfileShare(state, selectedProfileId, profileReferences);
saveState();
await syncStateToBackend();
renderView();
});
document.getElementById("trainingPublicProfileDisable")?.addEventListener("click", () => {
document.getElementById("trainingPublicProfileDisable")?.addEventListener("click", async () => {
state.training.shares = state.training.shares.map((share) => profileReferences.has(String(share.driverId || "")) ? { ...share, enabled: false } : share);
saveState();
await syncStateToBackend();
renderView();
});
document.querySelectorAll(".training-club-driver").forEach((button) => {