avatar
All checks were successful
Deploy / deploy (push) Successful in 51s

This commit is contained in:
2026-07-27 02:38:04 +02:00
parent f59d50f778
commit f757c4522e
2 changed files with 32 additions and 18 deletions

View File

@@ -21,17 +21,14 @@ final class Lorelei
public static function options(): array
{
$variants24 = self::variantOptions(24);
$optional24 = ['' => 'Automatisch'] + $variants24;
return [
'avatar_lorelei_eyes_variant' => $variants24,
'avatar_lorelei_eyebrows_variant' => $variants24,
'avatar_lorelei_mouth_variant' => $variants24,
'avatar_lorelei_glasses_variant' => $optional24,
'avatar_lorelei_hair_variant' => $optional24,
'avatar_lorelei_beard_variant' => $optional24,
'avatar_lorelei_earrings_variant' => $optional24,
'avatar_lorelei_eyes_variant' => self::variantOptions(24),
'avatar_lorelei_eyebrows_variant' => self::variantOptions(13),
'avatar_lorelei_mouth_variant' => self::mouthVariantOptions(),
'avatar_lorelei_glasses_variant' => ['' => 'Automatisch'] + self::variantOptions(5),
'avatar_lorelei_hair_variant' => ['' => 'Automatisch'] + self::variantOptions(48),
'avatar_lorelei_beard_variant' => ['' => 'Automatisch'] + self::variantOptions(2),
'avatar_lorelei_earrings_variant' => ['' => 'Automatisch'] + self::variantOptions(3),
];
}
@@ -192,6 +189,23 @@ final class Lorelei
return $options;
}
private static function mouthVariantOptions(): array
{
$options = [];
for ($index = 1; $index <= 18; $index++) {
$key = sprintf('happy%02d', $index);
$options[$key] = 'Freundlich ' . $index;
}
for ($index = 1; $index <= 9; $index++) {
$key = sprintf('sad%02d', $index);
$options[$key] = 'Zurueckhaltend ' . $index;
}
return $options;
}
public static function normalizeVariant(string $value): string
{
$value = strtolower(trim($value));
@@ -199,6 +213,6 @@ final class Lorelei
return '';
}
return preg_match('/^variant\d{2}$/', $value) === 1 ? $value : '';
return preg_match('/^(variant\d{2}|happy\d{2}|sad\d{2})$/', $value) === 1 ? $value : '';
}
}