Admin formulare
This commit is contained in:
@@ -54,23 +54,23 @@ export const ProfileForm = ({
|
|||||||
firstname: z
|
firstname: z
|
||||||
.string()
|
.string()
|
||||||
.min(2, {
|
.min(2, {
|
||||||
message: "Der Vorname muss mindestens 2 Zeichen lang sein",
|
message: "Gib einen gültigen Vornamen ein",
|
||||||
})
|
})
|
||||||
.max(30, {
|
.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",
|
message: "Der Vorname muss mit einem Großbuchstaben beginnen",
|
||||||
}),
|
}),
|
||||||
lastname: z
|
lastname: z
|
||||||
.string()
|
.string()
|
||||||
.min(2, {
|
.min(2, {
|
||||||
message: "Der Nachname muss mindestens 2 Zeichen lang sein",
|
message: "Gib einen gültigen Nachnamen ein",
|
||||||
})
|
})
|
||||||
.max(30, {
|
.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",
|
message: "Der Nachname muss mit einem Großbuchstaben beginnen",
|
||||||
}),
|
}),
|
||||||
settingsHideLastname: z.boolean(),
|
settingsHideLastname: z.boolean(),
|
||||||
|
|||||||
@@ -29,10 +29,10 @@ export const Register = () => {
|
|||||||
firstname: z
|
firstname: z
|
||||||
.string()
|
.string()
|
||||||
.min(2, {
|
.min(2, {
|
||||||
message: "Der Vorname muss mindestens 2 Zeichen lang sein",
|
message: "Gib einen gültigen Vornamen ein",
|
||||||
})
|
})
|
||||||
.max(30, {
|
.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), {
|
.refine((val) => val.length === 0 || /^[A-ZÄÖÜ]/.test(val), {
|
||||||
message: "Der Vorname muss mit einem Großbuchstaben beginnen",
|
message: "Der Vorname muss mit einem Großbuchstaben beginnen",
|
||||||
@@ -40,10 +40,10 @@ export const Register = () => {
|
|||||||
lastname: z
|
lastname: z
|
||||||
.string()
|
.string()
|
||||||
.min(2, {
|
.min(2, {
|
||||||
message: "Der Nachname muss mindestens 2 Zeichen lang sein",
|
message: "Gib einen gültigen Nachnamen ein",
|
||||||
})
|
})
|
||||||
.max(30, {
|
.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), {
|
.refine((val) => val.length === 0 || val.includes(" ") || /^[A-ZÄÖÜ]/.test(val), {
|
||||||
message: "Der Nachname muss mit einem Großbuchstaben beginnen",
|
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 {
|
export interface OldUser {
|
||||||
firstname: string;
|
firstname: string;
|
||||||
@@ -7,6 +7,9 @@ export interface OldUser {
|
|||||||
lastname: string;
|
lastname: string;
|
||||||
email: string;
|
email: string;
|
||||||
password: string;
|
password: string;
|
||||||
|
permissions: {
|
||||||
|
permissionList: string[];
|
||||||
|
};
|
||||||
settings: {
|
settings: {
|
||||||
privacyHideLastnameInNickname?: boolean;
|
privacyHideLastnameInNickname?: boolean;
|
||||||
notifyRoomID?: string;
|
notifyRoomID?: string;
|
||||||
@@ -41,17 +44,21 @@ export const createNewUserFromOld = async (oldUser: OldUser) => {
|
|||||||
.map((badge) => {
|
.map((badge) => {
|
||||||
switch (badge) {
|
switch (badge) {
|
||||||
case "day-1-member":
|
case "day-1-member":
|
||||||
return "DAY1";
|
return BADGES.DAY1;
|
||||||
case "d-1":
|
case "d-1":
|
||||||
return "D1";
|
return BADGES.D1;
|
||||||
case "p-1":
|
case "p-1":
|
||||||
return "P1";
|
return BADGES.P1;
|
||||||
default:
|
default:
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
.filter((badge) => badge !== 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