this is my code, I want to verify the email before the user can login, but unable to do in createAccount part, how to do that and prevent unauthorized user from login
TypeScript
export const useAuth = () => {
// login user
const loginUser = async (auth) => {
try {
return await account.createEmailSession(auth.email, auth.password)
} catch (error) {
console.log(error)
throw error
}
}
// register user
const register = async (auth) => {
try {
const newAccount = await account.create(ID.unique(), auth.email, auth.password, auth.firstName+" "+auth.lastName)
if (!newAccount) {
throw Error
}
const avatarUrl = avatars.getInitials(auth.firstName + " " + auth.lastName, 200, 200)
return await saveUserToDB({
user_id: newAccount.$id,
email: newAccount.email,
first_name: auth.firstName,
last_name: auth.lastName,
avatar_url: avatarUrl,
bodhi_points: 0
})
} catch (e) {
console.log(e)
throw e
}
}
// save user to database
const saveUserToDB = async ( user) => {
try {
return await databases.createDocument(
appwriteConfig.databaseId,
appwriteConfig.userCollectionId,
ID.unique(),
user,
)
} catch (e) {
console.log(e)
throw e
}
}
return {
loginUser,
register,
saveUserToDB,
}
}
TL;DR
Developers want to verify user email before login but are facing issues with the process. To prevent unauthorized access, implement email verification during the account creation step before allowing login.Recommended threads
- Not allowed permission to upsert a prese...
```js const presenceID = ID.unique(); setPID(presenceID); const presence = await presences.upsert({ presenceId: presenceID, status: "online"...
- Finding job
Hi. I am a full-stack developer with experience in developing scalable and user-friendly web applications. I handle both front-end and back-end development, im...
- CDN not delivering correct bundle
My site 69b4cd410035893573dc is not delivering the latest deployed version via CDN, it seems stuck on versions from previoiu days, alternative links for the lat...