Admin formulare
This commit is contained in:
@@ -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(),
|
||||
|
||||
@@ -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",
|
||||
|
||||
@@ -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]
|
||||
: []),
|
||||
],
|
||||
},
|
||||
});
|
||||
|
||||
Reference in New Issue
Block a user