Documentation
¶
Index ¶
- type UserService
- func (s *UserService) ActivateUser(userID string) error
- func (s *UserService) ChangePassword(userID, oldPassword, newPassword string) error
- func (s *UserService) CheckPassword(password, hashedPassword string) bool
- func (s *UserService) DeactivateUser(userID string) error
- func (s *UserService) DeleteAccount(userID string) error
- func (s *UserService) ForceVerifyUser(userID string) error
- func (s *UserService) GenerateOTP() string
- func (s *UserService) GetAllUsers() ([]*userModel.User, error)
- func (s *UserService) GetStaffUsers() ([]*userModel.User, error)
- func (s *UserService) GetUnverifiedUsers() ([]*userModel.User, error)
- func (s *UserService) GetUserByEmail(email string) (*userModel.User, error)
- func (s *UserService) GetUserByID(id string) (*userModel.User, error)
- func (s *UserService) GetUserByUsername(username string) (*userModel.User, error)
- func (s *UserService) GetUserFullName(user *userModel.User) string
- func (s *UserService) GetUserList(limit, offset int) ([]*userModel.User, error)
- func (s *UserService) GetUserStats() (map[string]interface{}, error)
- func (s *UserService) GetVerifiedUsers() ([]*userModel.User, error)
- func (s *UserService) HashPassword(password string) (string, error)
- func (s *UserService) LoginUser(email, password string) (*userModel.User, error)
- func (s *UserService) RegisterUser(username, email, firstName, lastName, password string) (*userModel.User, error)
- func (s *UserService) ResendOTP(userID string) error
- func (s *UserService) ResetPassword(userID, newPassword string) error
- func (s *UserService) SearchUsers(query string, limit, offset int) ([]*userModel.User, error)
- func (s *UserService) SendBulkEmail(userIDs []string, subject, content string) error
- func (s *UserService) UpdateUser(user *userModel.User) error
- func (s *UserService) ValidateEmail(email string) error
- func (s *UserService) ValidateUsername(username string) error
- func (s *UserService) VerifyOTP(email, otp string) error
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type UserService ¶
type UserService struct {
// contains filtered or unexported fields
}
func NewService ¶
func NewService(userRepo repo.UserRepository, emailService email.EmailServiceInterface) *UserService
NewService creates a new UserService (compatibility function)
func NewUserService ¶
func NewUserService(userRepo repo.UserRepository, emailService email.EmailServiceInterface) *UserService
func (*UserService) ActivateUser ¶
func (s *UserService) ActivateUser(userID string) error
ActivateUser activates a user account (admin function)
func (*UserService) ChangePassword ¶
func (s *UserService) ChangePassword(userID, oldPassword, newPassword string) error
ChangePassword changes user's password (Django's ChangePasswordView equivalent)
func (*UserService) CheckPassword ¶
func (s *UserService) CheckPassword(password, hashedPassword string) bool
CheckPassword verifies a password against its hash
func (*UserService) DeactivateUser ¶
func (s *UserService) DeactivateUser(userID string) error
DeactivateUser deactivates a user account (admin function)
func (*UserService) DeleteAccount ¶
func (s *UserService) DeleteAccount(userID string) error
DeleteAccount deletes a user account (Django's delete_account equivalent)
func (*UserService) ForceVerifyUser ¶
func (s *UserService) ForceVerifyUser(userID string) error
ForceVerifyUser forces verification without OTP (admin function)
func (*UserService) GenerateOTP ¶
func (s *UserService) GenerateOTP() string
GenerateOTP generates a 6-digit OTP
func (*UserService) GetAllUsers ¶
func (s *UserService) GetAllUsers() ([]*userModel.User, error)
GetAllUsers returns all users (for admin purposes)
func (*UserService) GetStaffUsers ¶
func (s *UserService) GetStaffUsers() ([]*userModel.User, error)
GetStaffUsers returns all staff users
func (*UserService) GetUnverifiedUsers ¶
func (s *UserService) GetUnverifiedUsers() ([]*userModel.User, error)
GetUnverifiedUsers returns all unverified users
func (*UserService) GetUserByEmail ¶
func (s *UserService) GetUserByEmail(email string) (*userModel.User, error)
GetUserByEmail returns a user by email
func (*UserService) GetUserByID ¶
func (s *UserService) GetUserByID(id string) (*userModel.User, error)
GetUserByID returns a user by ID
func (*UserService) GetUserByUsername ¶
func (s *UserService) GetUserByUsername(username string) (*userModel.User, error)
GetUserByUsername returns a user by username
func (*UserService) GetUserFullName ¶
func (s *UserService) GetUserFullName(user *userModel.User) string
GetFullName returns user's full name (Django model method equivalent)
func (*UserService) GetUserList ¶
func (s *UserService) GetUserList(limit, offset int) ([]*userModel.User, error)
GetUserList returns paginated list of users
func (*UserService) GetUserStats ¶
func (s *UserService) GetUserStats() (map[string]interface{}, error)
GetUserStats returns user statistics (admin function)
func (*UserService) GetVerifiedUsers ¶
func (s *UserService) GetVerifiedUsers() ([]*userModel.User, error)
GetVerifiedUsers returns all verified users
func (*UserService) HashPassword ¶
func (s *UserService) HashPassword(password string) (string, error)
HashPassword hashes a password using bcrypt
func (*UserService) LoginUser ¶
func (s *UserService) LoginUser(email, password string) (*userModel.User, error)
LoginUser authenticates a user (Django's user_login equivalent)
func (*UserService) RegisterUser ¶
func (s *UserService) RegisterUser(username, email, firstName, lastName, password string) (*userModel.User, error)
RegisterUser creates a new user account (Django's user_register equivalent)
func (*UserService) ResendOTP ¶
func (s *UserService) ResendOTP(userID string) error
ResendOTP generates and sends a new OTP for user verification
func (*UserService) ResetPassword ¶
func (s *UserService) ResetPassword(userID, newPassword string) error
ResetPassword sets a new password for the given user ID without requiring the old password. Intended for use by the password reset flow after token verification.
func (*UserService) SearchUsers ¶
SearchUsers searches for users by username or email (admin function)
func (*UserService) SendBulkEmail ¶
func (s *UserService) SendBulkEmail(userIDs []string, subject, content string) error
SendBulkEmail sends email to multiple users (Django equivalent)
func (*UserService) UpdateUser ¶
func (s *UserService) UpdateUser(user *userModel.User) error
UpdateUser updates user information
func (*UserService) ValidateEmail ¶
func (s *UserService) ValidateEmail(email string) error
ValidateEmail checks if email is valid format and not taken
func (*UserService) ValidateUsername ¶
func (s *UserService) ValidateUsername(username string) error
ValidateUsername checks if username is valid format and not taken
func (*UserService) VerifyOTP ¶
func (s *UserService) VerifyOTP(email, otp string) error
VerifyOTP verifies the user's email with OTP (Django's verify_otp equivalent)