Admin formulare

This commit is contained in:
PxlLoewe
2025-07-13 01:04:51 -07:00
parent f721c27964
commit a144b9efcd
3 changed files with 22 additions and 15 deletions

View File

@@ -54,23 +54,23 @@ export const ProfileForm = ({
firstname: z
.string()
.min(2, {
message: "Der Vorname muss mindestens 2 Zeichen lang sein",
message: "Gib einen gültigen Vornamen ein",
})
.max(30, {
message: "Der Vorname darf maximal 30 Zeichen lang sein",
message: "Gib einen gültigen Vornamen ein",
})
.refine((val) => /^[A-ZÄÖÜ]/.test(val), {
.refine((val) => val.length === 0 || /^[A-ZÄÖÜ]/.test(val), {
message: "Der Vorname muss mit einem Großbuchstaben beginnen",
}),
lastname: z
.string()
.min(2, {
message: "Der Nachname muss mindestens 2 Zeichen lang sein",
message: "Gib einen gültigen Nachnamen ein",
})
.max(30, {
message: "Der Nachname darf maximal 30 Zeichen lang sein",
message: "Gib einen gültigen Nachnamen ein",
})
.refine((val) => val.includes(" ") || /^[A-ZÄÖÜ]/.test(val), {
.refine((val) => val.length === 0 || val.includes(" ") || /^[A-ZÄÖÜ]/.test(val), {
message: "Der Nachname muss mit einem Großbuchstaben beginnen",
}),
settingsHideLastname: z.boolean(),

View File

@@ -29,10 +29,10 @@ export const Register = () => {
firstname: z
.string()
.min(2, {
message: "Der Vorname muss mindestens 2 Zeichen lang sein",
message: "Gib einen gültigen Vornamen ein",
})
.max(30, {
message: "Der Vorname darf maximal 30 Zeichen lang sein",
message: "Gib einen gültigen Vornamen ein",
})
.refine((val) => val.length === 0 || /^[A-ZÄÖÜ]/.test(val), {
message: "Der Vorname muss mit einem Großbuchstaben beginnen",
@@ -40,10 +40,10 @@ export const Register = () => {
lastname: z
.string()
.min(2, {
message: "Der Nachname muss mindestens 2 Zeichen lang sein",
message: "Gib einen gültigen Nachnamen ein",
})
.max(30, {
message: "Der Nachname darf maximal 30 Zeichen lang sein",
message: "Gib einen gültigen Nachnamen ein",
})
.refine((val) => val.length === 0 || val.includes(" ") || /^[A-ZÄÖÜ]/.test(val), {
message: "Der Nachname muss mit einem Großbuchstaben beginnen",

View File

@@ -1,4 +1,4 @@
import { prisma } from "@repo/db";
import { prisma, BADGES } from "@repo/db";
export interface OldUser {
firstname: string;
@@ -7,6 +7,9 @@ export interface OldUser {
lastname: string;
email: string;
password: string;
permissions: {
permissionList: string[];
};
settings: {
privacyHideLastnameInNickname?: boolean;
notifyRoomID?: string;
@@ -41,17 +44,21 @@ export const createNewUserFromOld = async (oldUser: OldUser) => {
.map((badge) => {
switch (badge) {
case "day-1-member":
return "DAY1";
return BADGES.DAY1;
case "d-1":
return "D1";
return BADGES.D1;
case "p-1":
return "P1";
return BADGES.P1;
default:
return null;
}
})
.filter((badge) => badge !== null),
"V1Veteran",
BADGES.V1Veteran,
...(oldUser.permissions.permissionList.includes("connect-dispatch") &&
!oldUser.badges.includes("d-1")
? [BADGES.D1]
: []),
],
},
});