Lint models/user.go
This commit is contained in:
		
							parent
							
								
									27d66855eb
								
							
						
					
					
						commit
						9963d61233
					
				| @ -12,6 +12,7 @@ import ( | ||||
| 	"errors" | ||||
| 	"fmt" | ||||
| 	"image" | ||||
| 	// Needed for jpeg support
 | ||||
| 	_ "image/jpeg" | ||||
| 	"image/png" | ||||
| 	"os" | ||||
| @ -34,20 +35,35 @@ import ( | ||||
| 	"code.gitea.io/gitea/modules/setting" | ||||
| ) | ||||
| 
 | ||||
| // UserType defines the user type
 | ||||
| type UserType int | ||||
| 
 | ||||
| const ( | ||||
| 	// UserTypeIndividual defines an individual user
 | ||||
| 	UserTypeIndividual UserType = iota // Historic reason to make it starts at 0.
 | ||||
| 
 | ||||
| 	// UserTypeOrganization defines an organization
 | ||||
| 	UserTypeOrganization | ||||
| ) | ||||
| 
 | ||||
| var ( | ||||
| 	ErrUserNotKeyOwner       = errors.New("User does not the owner of public key") | ||||
| 	ErrEmailNotExist         = errors.New("E-mail does not exist") | ||||
| 	ErrEmailNotActivated     = errors.New("E-mail address has not been activated") | ||||
| 	ErrUserNameIllegal       = errors.New("User name contains illegal characters") | ||||
| 	// ErrUserNotKeyOwner user does not own this key error
 | ||||
| 	ErrUserNotKeyOwner = errors.New("User does not own this public key") | ||||
| 
 | ||||
| 	// ErrEmailNotExist e-mail does not exist error
 | ||||
| 	ErrEmailNotExist = errors.New("E-mail does not exist") | ||||
| 
 | ||||
| 	// ErrEmailNotActivated e-mail address has not been activated error
 | ||||
| 	ErrEmailNotActivated = errors.New("E-mail address has not been activated") | ||||
| 
 | ||||
| 	// ErrUserNameIllegal user name contains illegal characters error
 | ||||
| 	ErrUserNameIllegal = errors.New("User name contains illegal characters") | ||||
| 
 | ||||
| 	// ErrLoginSourceNotActived login source is not actived error
 | ||||
| 	ErrLoginSourceNotActived = errors.New("Login source is not actived") | ||||
| 	ErrUnsupportedLoginType  = errors.New("Login source is unknown") | ||||
| 
 | ||||
| 	// ErrUnsupportedLoginType login source is unknown error
 | ||||
| 	ErrUnsupportedLoginType = errors.New("Login source is unknown") | ||||
| ) | ||||
| 
 | ||||
| // User represents the object of individual and member of organization.
 | ||||
| @ -112,11 +128,13 @@ type User struct { | ||||
| 	DiffViewStyle string `xorm:"NOT NULL DEFAULT ''"` | ||||
| } | ||||
| 
 | ||||
| // BeforeInsert is invoked from XORM before inserting an object of this type.
 | ||||
| func (u *User) BeforeInsert() { | ||||
| 	u.CreatedUnix = time.Now().Unix() | ||||
| 	u.UpdatedUnix = u.CreatedUnix | ||||
| } | ||||
| 
 | ||||
| // BeforeUpdate is invoked from XORM before updating this object.
 | ||||
| func (u *User) BeforeUpdate() { | ||||
| 	if u.MaxRepoCreation < -1 { | ||||
| 		u.MaxRepoCreation = -1 | ||||
| @ -124,16 +142,18 @@ func (u *User) BeforeUpdate() { | ||||
| 	u.UpdatedUnix = time.Now().Unix() | ||||
| } | ||||
| 
 | ||||
| // Set time to last login
 | ||||
| // SetLastLogin set time to last login
 | ||||
| func (u *User) SetLastLogin() { | ||||
| 	u.LastLoginUnix = time.Now().Unix() | ||||
| } | ||||
| 
 | ||||
| // UpdateDiffViewStyle updates the users diff view style
 | ||||
| func (u *User) UpdateDiffViewStyle(style string) error { | ||||
| 	u.DiffViewStyle = style | ||||
| 	return UpdateUser(u) | ||||
| } | ||||
| 
 | ||||
| // AfterSet is invoked from XORM after setting the value of a field of this object.
 | ||||
| func (u *User) AfterSet(colName string, _ xorm.Cell) { | ||||
| 	switch colName { | ||||
| 	case "full_name": | ||||
| @ -147,6 +167,7 @@ func (u *User) AfterSet(colName string, _ xorm.Cell) { | ||||
| 	} | ||||
| } | ||||
| 
 | ||||
| // APIFormat converts a User to api.User
 | ||||
| func (u *User) APIFormat() *api.User { | ||||
| 	return &api.User{ | ||||
| 		ID:        u.ID, | ||||
| @ -157,7 +178,7 @@ func (u *User) APIFormat() *api.User { | ||||
| 	} | ||||
| } | ||||
| 
 | ||||
| // returns true if user login type is LoginPlain.
 | ||||
| // IsLocal returns true if user login type is LoginPlain.
 | ||||
| func (u *User) IsLocal() bool { | ||||
| 	return u.LoginType <= LoginPlain | ||||
| } | ||||
| @ -168,6 +189,7 @@ func (u *User) HasForkedRepo(repoID int64) bool { | ||||
| 	return has | ||||
| } | ||||
| 
 | ||||
| // RepoCreationNum returns the number of repositories created by the user
 | ||||
| func (u *User) RepoCreationNum() int { | ||||
| 	if u.MaxRepoCreation <= -1 { | ||||
| 		return setting.Repository.MaxCreationLimit | ||||
| @ -175,6 +197,7 @@ func (u *User) RepoCreationNum() int { | ||||
| 	return u.MaxRepoCreation | ||||
| } | ||||
| 
 | ||||
| // CanCreateRepo returns if user login can create a repository
 | ||||
| func (u *User) CanCreateRepo() bool { | ||||
| 	if u.MaxRepoCreation <= -1 { | ||||
| 		if setting.Repository.MaxCreationLimit <= -1 { | ||||
| @ -261,15 +284,15 @@ func (u *User) GenerateRandomAvatar() error { | ||||
| // which includes app sub-url as prefix. However, it is possible
 | ||||
| // to return full URL if user enables Gravatar-like service.
 | ||||
| func (u *User) RelAvatarLink() string { | ||||
| 	defaultImgUrl := setting.AppSubURL + "/img/avatar_default.png" | ||||
| 	defaultImgURL := setting.AppSubURL + "/img/avatar_default.png" | ||||
| 	if u.ID == -1 { | ||||
| 		return defaultImgUrl | ||||
| 		return defaultImgURL | ||||
| 	} | ||||
| 
 | ||||
| 	switch { | ||||
| 	case u.UseCustomAvatar: | ||||
| 		if !com.IsExist(u.CustomAvatarPath()) { | ||||
| 			return defaultImgUrl | ||||
| 			return defaultImgURL | ||||
| 		} | ||||
| 		return setting.AppSubURL + "/avatars/" + com.ToStr(u.ID) | ||||
| 	case setting.DisableGravatar, setting.OfflineMode: | ||||
| @ -293,7 +316,7 @@ func (u *User) AvatarLink() string { | ||||
| 	return link | ||||
| } | ||||
| 
 | ||||
| // User.GetFollwoers returns range of user's followers.
 | ||||
| // GetFollowers returns range of user's followers.
 | ||||
| func (u *User) GetFollowers(page int) ([]*User, error) { | ||||
| 	users := make([]*User, 0, ItemsPerPage) | ||||
| 	sess := x. | ||||
| @ -307,6 +330,7 @@ func (u *User) GetFollowers(page int) ([]*User, error) { | ||||
| 	return users, sess.Find(&users) | ||||
| } | ||||
| 
 | ||||
| // IsFollowing returns true if user is following followID.
 | ||||
| func (u *User) IsFollowing(followID int64) bool { | ||||
| 	return IsFollowing(u.ID, followID) | ||||
| } | ||||
| @ -418,13 +442,13 @@ func (u *User) IsOrganization() bool { | ||||
| } | ||||
| 
 | ||||
| // IsUserOrgOwner returns true if user is in the owner team of given organization.
 | ||||
| func (u *User) IsUserOrgOwner(orgId int64) bool { | ||||
| 	return IsOrganizationOwner(orgId, u.ID) | ||||
| func (u *User) IsUserOrgOwner(orgID int64) bool { | ||||
| 	return IsOrganizationOwner(orgID, u.ID) | ||||
| } | ||||
| 
 | ||||
| // IsPublicMember returns true if user public his/her membership in give organization.
 | ||||
| func (u *User) IsPublicMember(orgId int64) bool { | ||||
| 	return IsPublicMembership(orgId, u.ID) | ||||
| func (u *User) IsPublicMember(orgID int64) bool { | ||||
| 	return IsPublicMembership(orgID, u.ID) | ||||
| } | ||||
| 
 | ||||
| func (u *User) getOrganizationCount(e Engine) (int64, error) { | ||||
| @ -444,7 +468,7 @@ func (u *User) GetRepositories(page, pageSize int) (err error) { | ||||
| 	return err | ||||
| } | ||||
| 
 | ||||
| // GetRepositories returns mirror repositories that user owns, including private repositories.
 | ||||
| // GetMirrorRepositories returns mirror repositories that user owns, including private repositories.
 | ||||
| func (u *User) GetMirrorRepositories() ([]*Repository, error) { | ||||
| 	return GetUserMirrorRepositories(u.ID) | ||||
| } | ||||
| @ -481,6 +505,7 @@ func (u *User) DisplayName() string { | ||||
| 	return u.Name | ||||
| } | ||||
| 
 | ||||
| // ShortName ellipses username to length
 | ||||
| func (u *User) ShortName(length int) string { | ||||
| 	return base.EllipsisString(u.Name, length) | ||||
| } | ||||
| @ -542,6 +567,7 @@ func isUsableName(names, patterns []string, name string) error { | ||||
| 	return nil | ||||
| } | ||||
| 
 | ||||
| // IsUsableUsername returns an error when a username is reserved
 | ||||
| func IsUsableUsername(name string) error { | ||||
| 	return isUsableName(reservedUsernames, reservedUserPatterns, name) | ||||
| } | ||||
| @ -630,7 +656,7 @@ func getVerifyUser(code string) (user *User) { | ||||
| 	return nil | ||||
| } | ||||
| 
 | ||||
| // verify active code when active account
 | ||||
| // VerifyUserActiveCode verifies active code when active account
 | ||||
| func VerifyUserActiveCode(code string) (user *User) { | ||||
| 	minutes := setting.Service.ActiveCodeLives | ||||
| 
 | ||||
| @ -646,7 +672,7 @@ func VerifyUserActiveCode(code string) (user *User) { | ||||
| 	return nil | ||||
| } | ||||
| 
 | ||||
| // verify active code when active account
 | ||||
| // VerifyActiveEmailCode verifies active email code when active account
 | ||||
| func VerifyActiveEmailCode(code, email string) *EmailAddress { | ||||
| 	minutes := setting.Service.ActiveCodeLives | ||||
| 
 | ||||
| @ -1063,6 +1089,7 @@ func GetUserByEmail(email string) (*User, error) { | ||||
| 	return nil, ErrUserNotExist{0, email, 0} | ||||
| } | ||||
| 
 | ||||
| // SearchUserOptions contains the options for searching
 | ||||
| type SearchUserOptions struct { | ||||
| 	Keyword  string | ||||
| 	Type     UserType | ||||
| @ -1123,6 +1150,7 @@ type Follow struct { | ||||
| 	FollowID int64 `xorm:"UNIQUE(follow)"` | ||||
| } | ||||
| 
 | ||||
| // IsFollowing returns true if user is following followID.
 | ||||
| func IsFollowing(userID, followID int64) bool { | ||||
| 	has, _ := x.Get(&Follow{UserID: userID, FollowID: followID}) | ||||
| 	return has | ||||
|  | ||||
		Loading…
	
		Reference in New Issue
	
	Block a user