user

package
v0.2.3 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Sep 8, 2025 License: MIT Imports: 12 Imported by: 0

Documentation

Index

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

func (s *UserService) SearchUsers(query string, limit, offset int) ([]*userModel.User, error)

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)

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL