Files
neo-blog/pkg/utils/email_verify.go
Snowykami b0b32c93d1 feat: add email verification and password reset functionality
- Introduced environment variables for database and email configurations.
- Implemented email verification code generation and validation.
- Added password reset feature with email verification.
- Updated user registration and profile management APIs.
- Refactored user security settings to include email and password updates.
- Enhanced console layout with internationalization support.
- Removed deprecated settings page and integrated global settings.
- Added new reset password page and form components.
- Updated localization files for new features and translations.
2025-09-23 00:33:34 +08:00

28 lines
662 B
Go

package utils
import (
"time"
"github.com/snowykami/neo-blog/pkg/constant"
)
func RequestEmailVerify(email string) string {
generatedVerificationCode := Strings.GenerateRandomStringWithCharset(6, "0123456789abcdef")
kv := KV.GetInstance()
kv.Set(constant.KVKeyEmailVerificationCode+email, generatedVerificationCode, time.Minute*10)
return generatedVerificationCode
}
func VerifyEmailCode(email, code string) bool {
kv := KV.GetInstance()
storedCode, ok := kv.Get(constant.KVKeyEmailVerificationCode + email)
if !ok {
return false
}
if storedCode != code {
return false
}
kv.Delete(constant.KVKeyEmailVerificationCode + email)
return true
}