Add:api-login

This commit is contained in:
supalerk-ar66 2026-01-14 15:15:31 +07:00
parent a6cddc6318
commit c411f2a8a4
20 changed files with 434 additions and 185 deletions

View file

@ -13,7 +13,9 @@ useHead({
title: 'ตั้งรหัสผ่านใหม่ - e-Learning'
})
const route = useRoute()
const router = useRouter()
const { confirmResetPassword } = useAuth()
const { errors, validate, clearFieldError } = useFormValidation()
const isLoading = ref(false)
@ -28,14 +30,41 @@ const resetRules = {
confirmPassword: { rules: { required: true, match: 'password' }, label: 'ยืนยันรหัสผ่าน' }
}
onMounted(() => {
if (!route.query.token || !route.query.id) {
alert('ลิงก์รีเซ็ตรหัสผ่านไม่ถูกต้องหรือหมดอายุ')
router.push('/auth/login')
}
})
const resetPassword = async () => {
if (!validate(resetForm, resetRules)) return
// Extract token and id from query
const token = route.query.token as string
const id = Number(route.query.id)
if (!token || !id) {
alert('ข้อมูลสำหรับรีเซ็ตไม่ครบถ้วน')
return
}
isLoading.value = true
await new Promise(resolve => setTimeout(resolve, 1500))
const result = await confirmResetPassword({
id,
token,
password: resetForm.password
})
isLoading.value = false
alert('รีเซ็ตรหัสผ่านสำเร็จ!')
router.push('/auth/login')
if (result.success) {
alert('รีเซ็ตรหัสผ่านสำเร็จ! กรุณาเข้าสู่ระบบด้วยรหัสผ่านใหม่')
router.push('/auth/login')
} else {
alert(result.error || 'เกิดข้อผิดพลาดในการรีเซ็ตรหัสผ่าน')
}
}
</script>