fix update server admin email cause create new user closes #443

This commit is contained in:
miloschwartz 2025-03-31 15:02:26 -04:00
parent 1d105fc5be
commit 6204fa0ade
No known key found for this signature in database
3 changed files with 22 additions and 30 deletions

View file

@ -29,7 +29,7 @@ export async function setupServerAdmin() {
const [existing] = await trx
.select()
.from(users)
.where(eq(users.email, email));
.where(eq(users.serverAdmin, true));
if (existing) {
const passwordChanged = !(await verifyPassword(
@ -46,41 +46,33 @@ export async function setupServerAdmin() {
// this isn't using the transaction, but it's probably fine
await invalidateAllSessions(existing.userId);
logger.info(`Server admin (${email}) password updated`);
logger.info(`Server admin password updated`);
}
if (existing.serverAdmin) {
logger.info(`Server admin (${email}) already exists`)
return;
if (existing.email !== email) {
await trx
.update(users)
.set({ email })
.where(eq(users.userId, existing.userId));
logger.info(`Server admin email updated`);
}
} else {
const userId = generateId(15);
await trx.update(users).set({ serverAdmin: false });
await trx
.update(users)
.set({
serverAdmin: true
})
.where(eq(users.email, email));
await db.insert(users).values({
userId: userId,
email: email,
passwordHash,
dateCreated: moment().toISOString(),
serverAdmin: true,
emailVerified: true
});
logger.info(`Server admin (${email}) set`);
return;
logger.info(`Server admin created`);
}
const userId = generateId(15);
await trx.update(users).set({ serverAdmin: false });
await db.insert(users).values({
userId: userId,
email: email,
passwordHash,
dateCreated: moment().toISOString(),
serverAdmin: true,
emailVerified: true
});
logger.info(`Server admin (${email}) created`);
} catch (e) {
logger.error(e);
trx.rollback();

View file

@ -28,7 +28,7 @@ export default function CopyTextBox({
return (
<div
className={`relative w-full border rounded-md ${!outline ? "bg-muted" : "bg-card"}`}
className={`relative w-full border-2 rounded-md ${!outline ? "bg-muted" : "bg-card"}`}
>
<pre
ref={textRef}

View file

@ -4,7 +4,7 @@ import { cva, type VariantProps } from "class-variance-authority";
import { cn } from "@app/lib/cn";
const alertVariants = cva(
"relative w-full rounded-lg border p-4 [&>svg~*]:pl-7 [&>svg+div]:translate-y-[-3px] [&>svg]:absolute [&>svg]:left-4 [&>svg]:top-4 [&>svg]:text-foreground",
"relative w-full rounded-lg border-2 p-4 [&>svg~*]:pl-7 [&>svg+div]:translate-y-[-3px] [&>svg]:absolute [&>svg]:left-4 [&>svg]:top-4 [&>svg]:text-foreground",
{
variants: {
variant: {