"use client"; import React from "react"; import { useSearchParams } from "next/navigation"; import * as z from "zod"; import { useToast } from "@/hooks/use-toast"; import { Toaster } from "@/components/ui/toaster"; import { set, useForm } from "react-hook-form"; import { zodResolver } from "@hookform/resolvers/zod"; import { Form, FormControl, FormDescription, FormField, FormItem, FormLabel, FormMessage, } from "@/components/ui/form"; import { useRouter } from "next/navigation"; import { showToast } from "@/components/login/toaster"; import { create_password_via_token } from "../../(apicalls)/login/password"; const formSchema = z.object({ loginPassword: z .string() .min(5, { message: "Şifre 6 karakterden az olamaz" }) .default(""), repeatLoginPassword: z .string() .min(5, { message: "Şifre 6 karakterden az olamaz" }) .default(""), }); const ChangePassword: React.FC = () => { const { toast } = useToast(); const searchParams = useSearchParams(); const token = searchParams.get("tokenUrl") || ""; const router = useRouter(); const [showPassword, setShowPassword] = React.useState(false); const [showRePassword, setshowRePassword] = React.useState(false); const [showOldPassword, setshowOldPassword] = React.useState(false); function changePwd() { setShowPassword(!showPassword); } function changeRePwd() { setshowRePassword(!showRePassword); } function changeOldPwd() { setshowOldPassword(!showOldPassword); } const form = useForm>({ resolver: zodResolver(formSchema), }); function onSubmit(values: z.infer) { if (values.loginPassword !== values.repeatLoginPassword) { showToast(toast, "Giriş başarısız", { message: "Şifreler eşleşmiyor", }); } else { create_password_via_token({ token: token || "", password: values.loginPassword, rePassword: values.repeatLoginPassword, }) .then((res: any) => { if (res.status === 200) { showToast(toast, "Giriş başarılı", { message: res?.message, data: res, }); setTimeout(() => { router.push("/login/select"); }, 1000); } showToast(toast, "Giriş başarısız", { message: res?.error, data: res, }); }) .catch((error) => { console.error(error); showToast(toast, "Giriş başarısız", { message: "Kullanıcı adı veya şifre hatalı", data: JSON.stringify(error.code), }); }); } } return (
{token ? (

Lorem ipsum dolor sit amet, consectetur adipiscing elit suspendisse.

Şifrenizi Değiştirin

( )} />
( )} />
) : (

Şifre değiştirme tokeniniz geçersiz veya süresi dolmuş olabilir. Lütfen tekrar şifre değiştirme talebinde bulunun.

)}
); }; export default ChangePassword;