adsad
All checks were successful
Deploy / deploy (push) Successful in 1m41s

This commit is contained in:
2026-07-27 02:08:28 +02:00
parent 75e3cab14b
commit da942a76aa
3 changed files with 26 additions and 75 deletions

View File

@@ -763,8 +763,7 @@ document.addEventListener('DOMContentLoaded', () => {
};
const updateAvatarOptionPreviews = (form) => {
const checked = form.querySelector('[data-avatar-field="avatar_preset"]:checked');
const baseSeed = checked?.value || '';
const baseSeed = readValue('avatar_preset');
if (!baseSeed) return;
const currentValues = {};
@@ -794,10 +793,7 @@ document.addEventListener('DOMContentLoaded', () => {
form.querySelectorAll('[data-avatar-option-thumb]').forEach((image) => {
const field = image.getAttribute('data-avatar-option-field') || '';
const value = image.getAttribute('data-avatar-option-value') || '';
const seed = field === 'avatar_preset' ? value : baseSeed;
if (!seed) return;
const params = new URLSearchParams({ seed });
const params = new URLSearchParams({ seed: baseSeed });
Object.entries(currentValues).forEach(([currentField, currentValue]) => {
const param = fieldMap[currentField];
if (!param) return;
@@ -879,24 +875,9 @@ document.addEventListener('DOMContentLoaded', () => {
};
form.querySelector('[data-avatar-reroll]')?.addEventListener('click', () => {
const radios = Array.from(form.querySelectorAll('[data-avatar-field="avatar_preset"]'));
const used = new Set();
radios.forEach((radio, index) => {
let seed = buildSeed();
while (used.has(seed)) {
seed = buildSeed();
}
used.add(seed);
const url = dicebearUrl(seed);
radio.value = seed;
radio.setAttribute('data-avatar-url', url);
radio.checked = index === 0;
const card = radio.closest('.avatar-preset-card');
card?.querySelector('img')?.setAttribute('src', url);
card?.querySelector('img')?.setAttribute('alt', `Variante ${index + 1}`);
const label = card?.querySelector('.avatar-preset-card__label');
if (label) label.textContent = index === 0 ? 'Neue Auswahl' : `Variante ${index + 1}`;
});
const seedField = form.querySelector('[data-avatar-field="avatar_preset"]');
if (!(seedField instanceof HTMLInputElement)) return;
seedField.value = buildSeed();
updateAvatarPreview(form);
updateAvatarOptionPreviews(form);
});