|
|
|
|
@@ -116,12 +116,12 @@ export const ProfileForm = ({
|
|
|
|
|
})}
|
|
|
|
|
>
|
|
|
|
|
<h2 className="card-title">
|
|
|
|
|
<MixerHorizontalIcon className="w-5 h-5" /> Persönliche Informationen
|
|
|
|
|
<MixerHorizontalIcon className="h-5 w-5" /> Persönliche Informationen
|
|
|
|
|
</h2>
|
|
|
|
|
<div className="text-left">
|
|
|
|
|
{!canEdit && (
|
|
|
|
|
<div className="text-left">
|
|
|
|
|
<h2 className="text-lg text-warning card-title">
|
|
|
|
|
<h2 className="text-warning card-title text-lg">
|
|
|
|
|
Du kannst deine Stammdaten nicht bearbeiten!
|
|
|
|
|
</h2>
|
|
|
|
|
<p className="text-sm text-gray-400">
|
|
|
|
|
@@ -133,8 +133,8 @@ export const ProfileForm = ({
|
|
|
|
|
)}
|
|
|
|
|
{canEdit && (
|
|
|
|
|
<>
|
|
|
|
|
<label className="floating-label w-full mb-5 mt-5">
|
|
|
|
|
<span className="text-lg flex items-center gap-2">
|
|
|
|
|
<label className="floating-label mb-5 mt-5 w-full">
|
|
|
|
|
<span className="flex items-center gap-2 text-lg">
|
|
|
|
|
<PersonIcon /> Vorname
|
|
|
|
|
</span>
|
|
|
|
|
<input
|
|
|
|
|
@@ -148,8 +148,8 @@ export const ProfileForm = ({
|
|
|
|
|
{form.formState.errors.firstname && (
|
|
|
|
|
<p className="text-error">{form.formState.errors.firstname.message}</p>
|
|
|
|
|
)}
|
|
|
|
|
<label className="floating-label w-full mt-4">
|
|
|
|
|
<span className="text-lg flex items-center gap-2">
|
|
|
|
|
<label className="floating-label mt-4 w-full">
|
|
|
|
|
<span className="flex items-center gap-2 text-lg">
|
|
|
|
|
<PersonIcon /> Nachname
|
|
|
|
|
</span>
|
|
|
|
|
<input
|
|
|
|
|
@@ -169,10 +169,10 @@ export const ProfileForm = ({
|
|
|
|
|
{...form.register("settingsHideLastname")}
|
|
|
|
|
className="checkbox"
|
|
|
|
|
/>
|
|
|
|
|
Initialien des Nachnamens verstecken
|
|
|
|
|
Anfangsbuchstaben des Nachnamens verstecken
|
|
|
|
|
</label>
|
|
|
|
|
<label className="floating-label w-full mt-4">
|
|
|
|
|
<span className="text-lg flex items-center gap-2">
|
|
|
|
|
<label className="floating-label mt-4 w-full">
|
|
|
|
|
<span className="flex items-center gap-2 text-lg">
|
|
|
|
|
<EnvelopeClosedIcon /> E-Mail
|
|
|
|
|
</span>
|
|
|
|
|
<input
|
|
|
|
|
@@ -255,13 +255,13 @@ export const SocialForm = ({
|
|
|
|
|
})}
|
|
|
|
|
>
|
|
|
|
|
<h2 className="card-title mb-5">
|
|
|
|
|
<Link2Icon className="w-5 h-5" /> Verbindungen & Benachrichtigungen
|
|
|
|
|
<Link2Icon className="h-5 w-5" /> Verbindungen & Benachrichtigungen
|
|
|
|
|
</h2>
|
|
|
|
|
<div>
|
|
|
|
|
<div>
|
|
|
|
|
{discordAccount ? (
|
|
|
|
|
<Button
|
|
|
|
|
className="btn-success btn-block btn-outline group transition-all duration-0 hover:btn-error"
|
|
|
|
|
className="btn-success btn-block btn-outline hover:btn-error group transition-all duration-0"
|
|
|
|
|
isLoading={isLoading}
|
|
|
|
|
onClick={async () => {
|
|
|
|
|
setIsLoading(true);
|
|
|
|
|
@@ -270,7 +270,7 @@ export const SocialForm = ({
|
|
|
|
|
setIsLoading(false);
|
|
|
|
|
}}
|
|
|
|
|
>
|
|
|
|
|
<DiscordLogoIcon className="w-5 h-5" />
|
|
|
|
|
<DiscordLogoIcon className="h-5 w-5" />
|
|
|
|
|
<span className="group-hover:hidden">Verbunden mit {discordAccount.username}</span>
|
|
|
|
|
<span className="hidden group-hover:inline">
|
|
|
|
|
Verbindung trennen{isLoading && "..."}
|
|
|
|
|
@@ -279,15 +279,15 @@ export const SocialForm = ({
|
|
|
|
|
) : (
|
|
|
|
|
<a href={process.env.NEXT_PUBLIC_DISCORD_URL}>
|
|
|
|
|
<button type="button" className="btn btn-primary btn-block" onSubmit={() => false}>
|
|
|
|
|
<DiscordLogoIcon className="w-5 h-5" /> Mit Discord verbinden
|
|
|
|
|
<DiscordLogoIcon className="h-5 w-5" /> Mit Discord verbinden
|
|
|
|
|
</button>
|
|
|
|
|
</a>
|
|
|
|
|
)}
|
|
|
|
|
</div>
|
|
|
|
|
</div>
|
|
|
|
|
<div className="content-center">
|
|
|
|
|
<label className="floating-label w-full mt-5">
|
|
|
|
|
<span className="text-lg flex items-center gap-2">
|
|
|
|
|
<label className="floating-label mt-5 w-full">
|
|
|
|
|
<span className="flex items-center gap-2 text-lg">
|
|
|
|
|
<PaperPlaneIcon /> VATSIM-CID
|
|
|
|
|
</span>
|
|
|
|
|
<input
|
|
|
|
|
@@ -298,7 +298,7 @@ export const SocialForm = ({
|
|
|
|
|
/>
|
|
|
|
|
</label>
|
|
|
|
|
<p
|
|
|
|
|
className="label mt-2 w-full text-wrap text-left tooltip"
|
|
|
|
|
className="label tooltip mt-2 w-full text-wrap text-left"
|
|
|
|
|
data-tip="Wenn du dein VATSIM-CID hier angibst, wirst du dein Vorname, das Initial des Nachnamens
|
|
|
|
|
und dein VATSIM-CID öffentlich in einer Tabelle angezeigt. Dies dient der
|
|
|
|
|
Nachvollziehbarkeit für Vatsim-Supervisor"
|
|
|
|
|
@@ -309,7 +309,7 @@ export const SocialForm = ({
|
|
|
|
|
<p className="text-error">{form.formState.errors.vatsimCid.message}</p>
|
|
|
|
|
)}
|
|
|
|
|
</div>
|
|
|
|
|
<div className="card-actions justify-center pt-6 mt-auto">
|
|
|
|
|
<div className="card-actions mt-auto justify-center pt-6">
|
|
|
|
|
<Button
|
|
|
|
|
className="btn-sm btn-wide btn-outline btn-primary"
|
|
|
|
|
isLoading={vatsimLoading}
|
|
|
|
|
@@ -329,11 +329,11 @@ export const DeleteForm = ({ user, penaltys }: { user: User; penaltys: Penalty[]
|
|
|
|
|
return (
|
|
|
|
|
<div className="card-body">
|
|
|
|
|
<h2 className="card-title mb-5">
|
|
|
|
|
<CircleAlert className="w-5 h-5" /> Danger-Zone
|
|
|
|
|
<CircleAlert className="h-5 w-5" /> Danger-Zone
|
|
|
|
|
</h2>
|
|
|
|
|
{!userCanDelete && (
|
|
|
|
|
<div className="text-left">
|
|
|
|
|
<h2 className="text-lg text-warning">Du kannst dein Konto zurzeit nicht löschen!</h2>
|
|
|
|
|
<h2 className="text-warning text-lg">Du kannst dein Konto zurzeit nicht löschen!</h2>
|
|
|
|
|
<p className="text-sm text-gray-400">
|
|
|
|
|
Scheinbar hast du aktuell zurzeit aktive Strafen. Um unsere Community zu schützen kannst
|
|
|
|
|
du einen Account erst löschen wenn deine Strafe nicht mehr aktiv ist
|
|
|
|
|
@@ -342,7 +342,7 @@ export const DeleteForm = ({ user, penaltys }: { user: User; penaltys: Penalty[]
|
|
|
|
|
)}
|
|
|
|
|
{userCanDelete && (
|
|
|
|
|
<div
|
|
|
|
|
className="tooltip flex-1 min-w-[250px] tooltip-warning"
|
|
|
|
|
className="tooltip tooltip-warning min-w-[250px] flex-1"
|
|
|
|
|
data-tip="Achtung! Dies löscht deinen Account und alle zugehörigen Daten. Dieser Vorgang ist nicht rückgängig zu machen."
|
|
|
|
|
>
|
|
|
|
|
<Button
|
|
|
|
|
@@ -397,11 +397,11 @@ export const PasswordForm = (): React.JSX.Element => {
|
|
|
|
|
})}
|
|
|
|
|
>
|
|
|
|
|
<h2 className="card-title">
|
|
|
|
|
<LockClosedIcon className="w-5 h-5" /> Password Ändern
|
|
|
|
|
<LockClosedIcon className="h-5 w-5" /> Password Ändern
|
|
|
|
|
</h2>
|
|
|
|
|
<div className="">
|
|
|
|
|
<label className="floating-label w-full mt-5 mb-5">
|
|
|
|
|
<span className="text-lg flex items-center gap-2">
|
|
|
|
|
<label className="floating-label mb-5 mt-5 w-full">
|
|
|
|
|
<span className="flex items-center gap-2 text-lg">
|
|
|
|
|
<LockOpen2Icon /> Aktuelles Passwort
|
|
|
|
|
</span>
|
|
|
|
|
<input
|
|
|
|
|
@@ -414,8 +414,8 @@ export const PasswordForm = (): React.JSX.Element => {
|
|
|
|
|
{form.formState.errors.password && (
|
|
|
|
|
<p className="text-error">{form.formState.errors.password.message}</p>
|
|
|
|
|
)}
|
|
|
|
|
<label className="floating-label w-full mb-5">
|
|
|
|
|
<span className="text-lg flex items-center gap-2">
|
|
|
|
|
<label className="floating-label mb-5 w-full">
|
|
|
|
|
<span className="flex items-center gap-2 text-lg">
|
|
|
|
|
<LockOpen1Icon /> Neues Passwort
|
|
|
|
|
</span>
|
|
|
|
|
<input
|
|
|
|
|
@@ -429,7 +429,7 @@ export const PasswordForm = (): React.JSX.Element => {
|
|
|
|
|
<p className="text-error">{form.formState.errors.newPassword?.message}</p>
|
|
|
|
|
)}
|
|
|
|
|
<label className="floating-label w-full">
|
|
|
|
|
<span className="text-lg flex items-center gap-2">
|
|
|
|
|
<span className="flex items-center gap-2 text-lg">
|
|
|
|
|
<LockOpen1Icon /> Passwort wiederholen
|
|
|
|
|
</span>
|
|
|
|
|
<input
|
|
|
|
|
|