| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692 | 
							- // Copyright 2015 The Gogs Authors. All rights reserved.
 
- // Use of this source code is governed by a MIT-style
 
- // license that can be found in the LICENSE file.
 
- package models
 
- import (
 
- 	"fmt"
 
- )
 
- type ErrNameReserved struct {
 
- 	Name string
 
- }
 
- func IsErrNameReserved(err error) bool {
 
- 	_, ok := err.(ErrNameReserved)
 
- 	return ok
 
- }
 
- func (err ErrNameReserved) Error() string {
 
- 	return fmt.Sprintf("name is reserved [name: %s]", err.Name)
 
- }
 
- type ErrNamePatternNotAllowed struct {
 
- 	Pattern string
 
- }
 
- func IsErrNamePatternNotAllowed(err error) bool {
 
- 	_, ok := err.(ErrNamePatternNotAllowed)
 
- 	return ok
 
- }
 
- func (err ErrNamePatternNotAllowed) Error() string {
 
- 	return fmt.Sprintf("name pattern is not allowed [pattern: %s]", err.Pattern)
 
- }
 
- //  ____ ___
 
- // |    |   \______ ___________
 
- // |    |   /  ___// __ \_  __ \
 
- // |    |  /\___ \\  ___/|  | \/
 
- // |______//____  >\___  >__|
 
- //              \/     \/
 
- type ErrUserAlreadyExist struct {
 
- 	Name string
 
- }
 
- func IsErrUserAlreadyExist(err error) bool {
 
- 	_, ok := err.(ErrUserAlreadyExist)
 
- 	return ok
 
- }
 
- func (err ErrUserAlreadyExist) Error() string {
 
- 	return fmt.Sprintf("user already exists [name: %s]", err.Name)
 
- }
 
- type ErrUserNotExist struct {
 
- 	UID  int64
 
- 	Name string
 
- }
 
- func IsErrUserNotExist(err error) bool {
 
- 	_, ok := err.(ErrUserNotExist)
 
- 	return ok
 
- }
 
- func (err ErrUserNotExist) Error() string {
 
- 	return fmt.Sprintf("user does not exist [uid: %d, name: %s]", err.UID, err.Name)
 
- }
 
- type ErrEmailAlreadyUsed struct {
 
- 	Email string
 
- }
 
- func IsErrEmailAlreadyUsed(err error) bool {
 
- 	_, ok := err.(ErrEmailAlreadyUsed)
 
- 	return ok
 
- }
 
- func (err ErrEmailAlreadyUsed) Error() string {
 
- 	return fmt.Sprintf("e-mail has been used [email: %s]", err.Email)
 
- }
 
- type ErrUserOwnRepos struct {
 
- 	UID int64
 
- }
 
- func IsErrUserOwnRepos(err error) bool {
 
- 	_, ok := err.(ErrUserOwnRepos)
 
- 	return ok
 
- }
 
- func (err ErrUserOwnRepos) Error() string {
 
- 	return fmt.Sprintf("user still has ownership of repositories [uid: %d]", err.UID)
 
- }
 
- type ErrUserHasOrgs struct {
 
- 	UID int64
 
- }
 
- func IsErrUserHasOrgs(err error) bool {
 
- 	_, ok := err.(ErrUserHasOrgs)
 
- 	return ok
 
- }
 
- func (err ErrUserHasOrgs) Error() string {
 
- 	return fmt.Sprintf("user still has membership of organizations [uid: %d]", err.UID)
 
- }
 
- type ErrReachLimitOfRepo struct {
 
- 	Limit int
 
- }
 
- func IsErrReachLimitOfRepo(err error) bool {
 
- 	_, ok := err.(ErrReachLimitOfRepo)
 
- 	return ok
 
- }
 
- func (err ErrReachLimitOfRepo) Error() string {
 
- 	return fmt.Sprintf("user has reached maximum limit of repositories [limit: %d]", err.Limit)
 
- }
 
- //  __      __.__ __   .__
 
- // /  \    /  \__|  | _|__|
 
- // \   \/\/   /  |  |/ /  |
 
- //  \        /|  |    <|  |
 
- //   \__/\  / |__|__|_ \__|
 
- //        \/          \/
 
- type ErrWikiAlreadyExist struct {
 
- 	Title string
 
- }
 
- func IsErrWikiAlreadyExist(err error) bool {
 
- 	_, ok := err.(ErrWikiAlreadyExist)
 
- 	return ok
 
- }
 
- func (err ErrWikiAlreadyExist) Error() string {
 
- 	return fmt.Sprintf("wiki page already exists [title: %s]", err.Title)
 
- }
 
- // __________     ___.   .__  .__          ____  __.
 
- // \______   \__ _\_ |__ |  | |__| ____   |    |/ _|____ ___.__.
 
- //  |     ___/  |  \ __ \|  | |  |/ ___\  |      <_/ __ <   |  |
 
- //  |    |   |  |  / \_\ \  |_|  \  \___  |    |  \  ___/\___  |
 
- //  |____|   |____/|___  /____/__|\___  > |____|__ \___  > ____|
 
- //                     \/             \/          \/   \/\/
 
- type ErrKeyUnableVerify struct {
 
- 	Result string
 
- }
 
- func IsErrKeyUnableVerify(err error) bool {
 
- 	_, ok := err.(ErrKeyUnableVerify)
 
- 	return ok
 
- }
 
- func (err ErrKeyUnableVerify) Error() string {
 
- 	return fmt.Sprintf("Unable to verify key content [result: %s]", err.Result)
 
- }
 
- type ErrKeyNotExist struct {
 
- 	ID int64
 
- }
 
- func IsErrKeyNotExist(err error) bool {
 
- 	_, ok := err.(ErrKeyNotExist)
 
- 	return ok
 
- }
 
- func (err ErrKeyNotExist) Error() string {
 
- 	return fmt.Sprintf("public key does not exist [id: %d]", err.ID)
 
- }
 
- type ErrKeyAlreadyExist struct {
 
- 	OwnerID int64
 
- 	Content string
 
- }
 
- func IsErrKeyAlreadyExist(err error) bool {
 
- 	_, ok := err.(ErrKeyAlreadyExist)
 
- 	return ok
 
- }
 
- func (err ErrKeyAlreadyExist) Error() string {
 
- 	return fmt.Sprintf("public key already exists [owner_id: %d, content: %s]", err.OwnerID, err.Content)
 
- }
 
- type ErrKeyNameAlreadyUsed struct {
 
- 	OwnerID int64
 
- 	Name    string
 
- }
 
- func IsErrKeyNameAlreadyUsed(err error) bool {
 
- 	_, ok := err.(ErrKeyNameAlreadyUsed)
 
- 	return ok
 
- }
 
- func (err ErrKeyNameAlreadyUsed) Error() string {
 
- 	return fmt.Sprintf("public key already exists [owner_id: %d, name: %s]", err.OwnerID, err.Name)
 
- }
 
- type ErrKeyAccessDenied struct {
 
- 	UserID int64
 
- 	KeyID  int64
 
- 	Note   string
 
- }
 
- func IsErrKeyAccessDenied(err error) bool {
 
- 	_, ok := err.(ErrKeyAccessDenied)
 
- 	return ok
 
- }
 
- func (err ErrKeyAccessDenied) Error() string {
 
- 	return fmt.Sprintf("user does not have access to the key [user_id: %d, key_id: %d, note: %s]",
 
- 		err.UserID, err.KeyID, err.Note)
 
- }
 
- type ErrDeployKeyNotExist struct {
 
- 	ID     int64
 
- 	KeyID  int64
 
- 	RepoID int64
 
- }
 
- func IsErrDeployKeyNotExist(err error) bool {
 
- 	_, ok := err.(ErrDeployKeyNotExist)
 
- 	return ok
 
- }
 
- func (err ErrDeployKeyNotExist) Error() string {
 
- 	return fmt.Sprintf("Deploy key does not exist [id: %d, key_id: %d, repo_id: %d]", err.ID, err.KeyID, err.RepoID)
 
- }
 
- type ErrDeployKeyAlreadyExist struct {
 
- 	KeyID  int64
 
- 	RepoID int64
 
- }
 
- func IsErrDeployKeyAlreadyExist(err error) bool {
 
- 	_, ok := err.(ErrDeployKeyAlreadyExist)
 
- 	return ok
 
- }
 
- func (err ErrDeployKeyAlreadyExist) Error() string {
 
- 	return fmt.Sprintf("public key already exists [key_id: %d, repo_id: %d]", err.KeyID, err.RepoID)
 
- }
 
- type ErrDeployKeyNameAlreadyUsed struct {
 
- 	RepoID int64
 
- 	Name   string
 
- }
 
- func IsErrDeployKeyNameAlreadyUsed(err error) bool {
 
- 	_, ok := err.(ErrDeployKeyNameAlreadyUsed)
 
- 	return ok
 
- }
 
- func (err ErrDeployKeyNameAlreadyUsed) Error() string {
 
- 	return fmt.Sprintf("public key already exists [repo_id: %d, name: %s]", err.RepoID, err.Name)
 
- }
 
- //    _____                                   ___________     __
 
- //   /  _  \   ____  ____  ____   ______ _____\__    ___/___ |  | __ ____   ____
 
- //  /  /_\  \_/ ___\/ ___\/ __ \ /  ___//  ___/ |    | /  _ \|  |/ // __ \ /    \
 
- // /    |    \  \__\  \__\  ___/ \___ \ \___ \  |    |(  <_> )    <\  ___/|   |  \
 
- // \____|__  /\___  >___  >___  >____  >____  > |____| \____/|__|_ \\___  >___|  /
 
- //         \/     \/    \/    \/     \/     \/                    \/    \/     \/
 
- type ErrAccessTokenNotExist struct {
 
- 	SHA string
 
- }
 
- func IsErrAccessTokenNotExist(err error) bool {
 
- 	_, ok := err.(ErrAccessTokenNotExist)
 
- 	return ok
 
- }
 
- func (err ErrAccessTokenNotExist) Error() string {
 
- 	return fmt.Sprintf("access token does not exist [sha: %s]", err.SHA)
 
- }
 
- type ErrAccessTokenEmpty struct {
 
- }
 
- func IsErrAccessTokenEmpty(err error) bool {
 
- 	_, ok := err.(ErrAccessTokenEmpty)
 
- 	return ok
 
- }
 
- func (err ErrAccessTokenEmpty) Error() string {
 
- 	return fmt.Sprintf("access token is empty")
 
- }
 
- // ________                            .__                __  .__
 
- // \_____  \_______  _________    ____ |__|____________ _/  |_|__| ____   ____
 
- //  /   |   \_  __ \/ ___\__  \  /    \|  \___   /\__  \\   __\  |/  _ \ /    \
 
- // /    |    \  | \/ /_/  > __ \|   |  \  |/    /  / __ \|  | |  (  <_> )   |  \
 
- // \_______  /__|  \___  (____  /___|  /__/_____ \(____  /__| |__|\____/|___|  /
 
- //         \/     /_____/     \/     \/         \/     \/                    \/
 
- type ErrLastOrgOwner struct {
 
- 	UID int64
 
- }
 
- func IsErrLastOrgOwner(err error) bool {
 
- 	_, ok := err.(ErrLastOrgOwner)
 
- 	return ok
 
- }
 
- func (err ErrLastOrgOwner) Error() string {
 
- 	return fmt.Sprintf("user is the last member of owner team [uid: %d]", err.UID)
 
- }
 
- // __________                           .__  __
 
- // \______   \ ____ ______   ____  _____|__|/  |_  ___________ ___.__.
 
- //  |       _// __ \\____ \ /  _ \/  ___/  \   __\/  _ \_  __ <   |  |
 
- //  |    |   \  ___/|  |_> >  <_> )___ \|  ||  | (  <_> )  | \/\___  |
 
- //  |____|_  /\___  >   __/ \____/____  >__||__|  \____/|__|   / ____|
 
- //         \/     \/|__|              \/                       \/
 
- type ErrRepoNotExist struct {
 
- 	ID   int64
 
- 	UID  int64
 
- 	Name string
 
- }
 
- func IsErrRepoNotExist(err error) bool {
 
- 	_, ok := err.(ErrRepoNotExist)
 
- 	return ok
 
- }
 
- func (err ErrRepoNotExist) Error() string {
 
- 	return fmt.Sprintf("repository does not exist [id: %d, uid: %d, name: %s]", err.ID, err.UID, err.Name)
 
- }
 
- type ErrRepoAlreadyExist struct {
 
- 	Uname string
 
- 	Name  string
 
- }
 
- func IsErrRepoAlreadyExist(err error) bool {
 
- 	_, ok := err.(ErrRepoAlreadyExist)
 
- 	return ok
 
- }
 
- func (err ErrRepoAlreadyExist) Error() string {
 
- 	return fmt.Sprintf("repository already exists [uname: %s, name: %s]", err.Uname, err.Name)
 
- }
 
- type ErrInvalidCloneAddr struct {
 
- 	IsURLError         bool
 
- 	IsInvalidPath      bool
 
- 	IsPermissionDenied bool
 
- }
 
- func IsErrInvalidCloneAddr(err error) bool {
 
- 	_, ok := err.(ErrInvalidCloneAddr)
 
- 	return ok
 
- }
 
- func (err ErrInvalidCloneAddr) Error() string {
 
- 	return fmt.Sprintf("invalid clone address [is_url_error: %v, is_invalid_path: %v, is_permission_denied: %v]",
 
- 		err.IsURLError, err.IsInvalidPath, err.IsPermissionDenied)
 
- }
 
- type ErrUpdateTaskNotExist struct {
 
- 	UUID string
 
- }
 
- func IsErrUpdateTaskNotExist(err error) bool {
 
- 	_, ok := err.(ErrUpdateTaskNotExist)
 
- 	return ok
 
- }
 
- func (err ErrUpdateTaskNotExist) Error() string {
 
- 	return fmt.Sprintf("update task does not exist [uuid: %s]", err.UUID)
 
- }
 
- type ErrReleaseAlreadyExist struct {
 
- 	TagName string
 
- }
 
- func IsErrReleaseAlreadyExist(err error) bool {
 
- 	_, ok := err.(ErrReleaseAlreadyExist)
 
- 	return ok
 
- }
 
- func (err ErrReleaseAlreadyExist) Error() string {
 
- 	return fmt.Sprintf("release tag already exist [tag_name: %s]", err.TagName)
 
- }
 
- type ErrReleaseNotExist struct {
 
- 	ID      int64
 
- 	TagName string
 
- }
 
- func IsErrReleaseNotExist(err error) bool {
 
- 	_, ok := err.(ErrReleaseNotExist)
 
- 	return ok
 
- }
 
- func (err ErrReleaseNotExist) Error() string {
 
- 	return fmt.Sprintf("release tag does not exist [id: %d, tag_name: %s]", err.ID, err.TagName)
 
- }
 
- type ErrInvalidTagName struct {
 
- 	TagName string
 
- }
 
- func IsErrInvalidTagName(err error) bool {
 
- 	_, ok := err.(ErrInvalidTagName)
 
- 	return ok
 
- }
 
- func (err ErrInvalidTagName) Error() string {
 
- 	return fmt.Sprintf("release tag name is not valid [tag_name: %s]", err.TagName)
 
- }
 
- type ErrRepoFileAlreadyExist struct {
 
- 	FileName string
 
- }
 
- func IsErrRepoFileAlreadyExist(err error) bool {
 
- 	_, ok := err.(ErrRepoFileAlreadyExist)
 
- 	return ok
 
- }
 
- func (err ErrRepoFileAlreadyExist) Error() string {
 
- 	return fmt.Sprintf("repository file already exists [file_name: %s]", err.FileName)
 
- }
 
- // __________                             .__
 
- // \______   \____________    ____   ____ |  |__
 
- //  |    |  _/\_  __ \__  \  /    \_/ ___\|  |  \
 
- //  |    |   \ |  | \// __ \|   |  \  \___|   Y  \
 
- //  |______  / |__|  (____  /___|  /\___  >___|  /
 
- //         \/             \/     \/     \/     \/
 
- type ErrBranchNotExist struct {
 
- 	Name string
 
- }
 
- func IsErrBranchNotExist(err error) bool {
 
- 	_, ok := err.(ErrBranchNotExist)
 
- 	return ok
 
- }
 
- func (err ErrBranchNotExist) Error() string {
 
- 	return fmt.Sprintf("branch does not exist [name: %s]", err.Name)
 
- }
 
- //  __      __      ___.   .__                   __
 
- // /  \    /  \ ____\_ |__ |  |__   ____   ____ |  | __
 
- // \   \/\/   // __ \| __ \|  |  \ /  _ \ /  _ \|  |/ /
 
- //  \        /\  ___/| \_\ \   Y  (  <_> |  <_> )    <
 
- //   \__/\  /  \___  >___  /___|  /\____/ \____/|__|_ \
 
- //        \/       \/    \/     \/                   \/
 
- type ErrWebhookNotExist struct {
 
- 	ID int64
 
- }
 
- func IsErrWebhookNotExist(err error) bool {
 
- 	_, ok := err.(ErrWebhookNotExist)
 
- 	return ok
 
- }
 
- func (err ErrWebhookNotExist) Error() string {
 
- 	return fmt.Sprintf("webhook does not exist [id: %d]", err.ID)
 
- }
 
- // .___
 
- // |   | ______ ________ __   ____
 
- // |   |/  ___//  ___/  |  \_/ __ \
 
- // |   |\___ \ \___ \|  |  /\  ___/
 
- // |___/____  >____  >____/  \___  >
 
- //          \/     \/            \/
 
- type ErrIssueNotExist struct {
 
- 	ID     int64
 
- 	RepoID int64
 
- 	Index  int64
 
- }
 
- func IsErrIssueNotExist(err error) bool {
 
- 	_, ok := err.(ErrIssueNotExist)
 
- 	return ok
 
- }
 
- func (err ErrIssueNotExist) Error() string {
 
- 	return fmt.Sprintf("issue does not exist [id: %d, repo_id: %d, index: %d]", err.ID, err.RepoID, err.Index)
 
- }
 
- // __________      .__  .__ __________                                     __
 
- // \______   \__ __|  | |  |\______   \ ____  ________ __   ____   _______/  |_
 
- //  |     ___/  |  \  | |  | |       _// __ \/ ____/  |  \_/ __ \ /  ___/\   __\
 
- //  |    |   |  |  /  |_|  |_|    |   \  ___< <_|  |  |  /\  ___/ \___ \  |  |
 
- //  |____|   |____/|____/____/____|_  /\___  >__   |____/  \___  >____  > |__|
 
- //                                  \/     \/   |__|           \/     \/
 
- type ErrPullRequestNotExist struct {
 
- 	ID         int64
 
- 	IssueID    int64
 
- 	HeadRepoID int64
 
- 	BaseRepoID int64
 
- 	HeadBarcnh string
 
- 	BaseBranch string
 
- }
 
- func IsErrPullRequestNotExist(err error) bool {
 
- 	_, ok := err.(ErrPullRequestNotExist)
 
- 	return ok
 
- }
 
- func (err ErrPullRequestNotExist) Error() string {
 
- 	return fmt.Sprintf("pull request does not exist [id: %d, issue_id: %d, head_repo_id: %d, base_repo_id: %d, head_branch: %s, base_branch: %s]",
 
- 		err.ID, err.IssueID, err.HeadRepoID, err.BaseRepoID, err.HeadBarcnh, err.BaseBranch)
 
- }
 
- // _________                                       __
 
- // \_   ___ \  ____   _____   _____   ____   _____/  |_
 
- // /    \  \/ /  _ \ /     \ /     \_/ __ \ /    \   __\
 
- // \     \___(  <_> )  Y Y  \  Y Y  \  ___/|   |  \  |
 
- //  \______  /\____/|__|_|  /__|_|  /\___  >___|  /__|
 
- //         \/             \/      \/     \/     \/
 
- type ErrCommentNotExist struct {
 
- 	ID      int64
 
- 	IssueID int64
 
- }
 
- func IsErrCommentNotExist(err error) bool {
 
- 	_, ok := err.(ErrCommentNotExist)
 
- 	return ok
 
- }
 
- func (err ErrCommentNotExist) Error() string {
 
- 	return fmt.Sprintf("comment does not exist [id: %d, issue_id: %d]", err.ID, err.IssueID)
 
- }
 
- // .____          ___.          .__
 
- // |    |   _____ \_ |__   ____ |  |
 
- // |    |   \__  \ | __ \_/ __ \|  |
 
- // |    |___ / __ \| \_\ \  ___/|  |__
 
- // |_______ (____  /___  /\___  >____/
 
- //         \/    \/    \/     \/
 
- type ErrLabelNotExist struct {
 
- 	LabelID int64
 
- 	RepoID  int64
 
- }
 
- func IsErrLabelNotExist(err error) bool {
 
- 	_, ok := err.(ErrLabelNotExist)
 
- 	return ok
 
- }
 
- func (err ErrLabelNotExist) Error() string {
 
- 	return fmt.Sprintf("label does not exist [label_id: %d, repo_id: %d]", err.LabelID, err.RepoID)
 
- }
 
- //    _____  .__.__                   __
 
- //   /     \ |__|  |   ____   _______/  |_  ____   ____   ____
 
- //  /  \ /  \|  |  | _/ __ \ /  ___/\   __\/  _ \ /    \_/ __ \
 
- // /    Y    \  |  |_\  ___/ \___ \  |  | (  <_> )   |  \  ___/
 
- // \____|__  /__|____/\___  >____  > |__|  \____/|___|  /\___  >
 
- //         \/             \/     \/                   \/     \/
 
- type ErrMilestoneNotExist struct {
 
- 	ID     int64
 
- 	RepoID int64
 
- }
 
- func IsErrMilestoneNotExist(err error) bool {
 
- 	_, ok := err.(ErrMilestoneNotExist)
 
- 	return ok
 
- }
 
- func (err ErrMilestoneNotExist) Error() string {
 
- 	return fmt.Sprintf("milestone does not exist [id: %d, repo_id: %d]", err.ID, err.RepoID)
 
- }
 
- //    _____   __    __                .__                           __
 
- //   /  _  \_/  |__/  |______    ____ |  |__   _____   ____   _____/  |_
 
- //  /  /_\  \   __\   __\__  \ _/ ___\|  |  \ /     \_/ __ \ /    \   __\
 
- // /    |    \  |  |  |  / __ \\  \___|   Y  \  Y Y  \  ___/|   |  \  |
 
- // \____|__  /__|  |__| (____  /\___  >___|  /__|_|  /\___  >___|  /__|
 
- //         \/                \/     \/     \/      \/     \/     \/
 
- type ErrAttachmentNotExist struct {
 
- 	ID   int64
 
- 	UUID string
 
- }
 
- func IsErrAttachmentNotExist(err error) bool {
 
- 	_, ok := err.(ErrAttachmentNotExist)
 
- 	return ok
 
- }
 
- func (err ErrAttachmentNotExist) Error() string {
 
- 	return fmt.Sprintf("attachment does not exist [id: %d, uuid: %s]", err.ID, err.UUID)
 
- }
 
- // .____                 .__           _________
 
- // |    |    ____   ____ |__| ____    /   _____/ ____  __ _________   ____  ____
 
- // |    |   /  _ \ / ___\|  |/    \   \_____  \ /  _ \|  |  \_  __ \_/ ___\/ __ \
 
- // |    |__(  <_> ) /_/  >  |   |  \  /        (  <_> )  |  /|  | \/\  \__\  ___/
 
- // |_______ \____/\___  /|__|___|  / /_______  /\____/|____/ |__|    \___  >___  >
 
- //         \/    /_____/         \/          \/                          \/    \/
 
- type ErrLoginSourceNotExist struct {
 
- 	ID int64
 
- }
 
- func IsErrLoginSourceNotExist(err error) bool {
 
- 	_, ok := err.(ErrLoginSourceNotExist)
 
- 	return ok
 
- }
 
- func (err ErrLoginSourceNotExist) Error() string {
 
- 	return fmt.Sprintf("login source does not exist [id: %d]", err.ID)
 
- }
 
- type ErrLoginSourceAlreadyExist struct {
 
- 	Name string
 
- }
 
- func IsErrLoginSourceAlreadyExist(err error) bool {
 
- 	_, ok := err.(ErrLoginSourceAlreadyExist)
 
- 	return ok
 
- }
 
- func (err ErrLoginSourceAlreadyExist) Error() string {
 
- 	return fmt.Sprintf("login source already exists [name: %s]", err.Name)
 
- }
 
- type ErrLoginSourceInUse struct {
 
- 	ID int64
 
- }
 
- func IsErrLoginSourceInUse(err error) bool {
 
- 	_, ok := err.(ErrLoginSourceInUse)
 
- 	return ok
 
- }
 
- func (err ErrLoginSourceInUse) Error() string {
 
- 	return fmt.Sprintf("login source is still used by some users [id: %d]", err.ID)
 
- }
 
- // ___________
 
- // \__    ___/___ _____    _____
 
- //   |    |_/ __ \\__  \  /     \
 
- //   |    |\  ___/ / __ \|  Y Y  \
 
- //   |____| \___  >____  /__|_|  /
 
- //              \/     \/      \/
 
- type ErrTeamAlreadyExist struct {
 
- 	OrgID int64
 
- 	Name  string
 
- }
 
- func IsErrTeamAlreadyExist(err error) bool {
 
- 	_, ok := err.(ErrTeamAlreadyExist)
 
- 	return ok
 
- }
 
- func (err ErrTeamAlreadyExist) Error() string {
 
- 	return fmt.Sprintf("team already exists [org_id: %d, name: %s]", err.OrgID, err.Name)
 
- }
 
- //  ____ ___        .__                    .___
 
- // |    |   \______ |  |   _________     __| _/
 
- // |    |   /\____ \|  |  /  _ \__  \   / __ |
 
- // |    |  / |  |_> >  |_(  <_> ) __ \_/ /_/ |
 
- // |______/  |   __/|____/\____(____  /\____ |
 
- //           |__|                   \/      \/
 
- //
 
- type ErrUploadNotExist struct {
 
- 	ID   int64
 
- 	UUID string
 
- }
 
- func IsErrUploadNotExist(err error) bool {
 
- 	_, ok := err.(ErrAttachmentNotExist)
 
- 	return ok
 
- }
 
- func (err ErrUploadNotExist) Error() string {
 
- 	return fmt.Sprintf("attachment does not exist [id: %d, uuid: %s]", err.ID, err.UUID)
 
- }
 
 
  |