v2.0.8 #156
@@ -26,9 +26,10 @@ export async function getOrSetDeviceId() {
|
||||
export const logAction = async (
|
||||
type: LOG_TYPE,
|
||||
otherValues?: {
|
||||
field: string;
|
||||
oldValue: string;
|
||||
newValue: string;
|
||||
field?: string;
|
||||
oldValue?: string;
|
||||
newValue?: string;
|
||||
userId?: string;
|
||||
},
|
||||
) => {
|
||||
const headersList = await headers();
|
||||
@@ -40,7 +41,7 @@ export const logAction = async (
|
||||
headersList.get("X-Real-IP");
|
||||
|
||||
const deviceId = await getOrSetDeviceId();
|
||||
if (type == "LOGIN") {
|
||||
if (type == "LOGIN" || type == "REGISTER") {
|
||||
const existingLogs = await prisma.log.findMany({
|
||||
where: {
|
||||
type: "LOGIN",
|
||||
@@ -77,7 +78,7 @@ export const logAction = async (
|
||||
data: {
|
||||
type,
|
||||
browser: headersList.get("user-agent") || "unknown",
|
||||
userId: user?.user.id,
|
||||
userId: user?.user.id || otherValues?.userId,
|
||||
deviceId: deviceId,
|
||||
ip,
|
||||
...otherValues,
|
||||
|
||||
@@ -9,6 +9,7 @@ import { useState } from "react";
|
||||
import { Button } from "../../../_components/ui/Button";
|
||||
import { sendVerificationLink } from "(app)/admin/user/action";
|
||||
import toast from "react-hot-toast";
|
||||
import { logAction } from "(auth)/login/_components/action";
|
||||
|
||||
export const Register = () => {
|
||||
const schema = z
|
||||
@@ -93,6 +94,9 @@ export const Register = () => {
|
||||
return;
|
||||
}
|
||||
await sendVerificationLink(user.id);
|
||||
await logAction("REGISTER", {
|
||||
userId: user.id,
|
||||
});
|
||||
await signIn("credentials", {
|
||||
callbackUrl: "/",
|
||||
email: user.email,
|
||||
|
||||
@@ -53,5 +53,6 @@ export const register = async ({ password, ...user }: Omit<Prisma.UserCreateInpu
|
||||
password: hashedPassword,
|
||||
},
|
||||
});
|
||||
|
||||
return newUser;
|
||||
};
|
||||
|
||||
Reference in New Issue
Block a user