Documentation ¶
Index ¶
- Constants
- Variables
- func AddDeletePRBranchComment(doer *User, repo *Repository, issueID int64, branchName string) error
- func AddEmailAddress(email *EmailAddress) error
- func AddEmailAddresses(emails []*EmailAddress) error
- func AddOrgUser(orgID, uid int64) error
- func AddTeamMember(team *Team, userID int64) error
- func AddTestPullRequestTask(doer *User, repoID int64, branch string, isSync bool)
- func AttachmentLocalPath(uuid string) string
- func Cell2Int64(val xorm.Cell) int64
- func ChangeMilestoneAssign(issue *Issue, doer *User, oldMilestoneID int64) (err error)
- func ChangeMilestoneStatus(m *Milestone, isClosed bool) (err error)
- func ChangeOrgUserStatus(orgID, uid int64, public bool) error
- func ChangeRepositoryName(u *User, oldRepoName, newRepoName string) (err error)
- func ChangeUserName(u *User, newUserName string) (err error)
- func ChangeUsernameInPullRequests(oldUserName, newUserName string) error
- func CheckPublicKeyString(content string) (_ string, err error)
- func CheckRepoStats()
- func CommitRepoAction(opts CommitRepoActionOptions) error
- func ComposeHTTPSCloneURL(owner, repo string) string
- func CountLoginSources() int64
- func CountNotices() int64
- func CountOrganizations() int64
- func CountRepoClosedMilestones(repoID int64) int64
- func CountRepositories(private bool) int64
- func CountUserRepositories(userID int64, private bool) int64
- func CountUsers() int64
- func CreateHookTask(t *HookTask) error
- func CreateLoginSource(source *LoginSource) error
- func CreateNotice(tp NoticeType, desc string) error
- func CreateOrUpdateIssueNotifications(issue *Issue, notificationAuthorID int64) error
- func CreateOrganization(org, owner *User) (err error)
- func CreateRefComment(doer *User, repo *Repository, issue *Issue, content, commitSHA string) error
- func CreateRelease(gitRepo *git.Repository, rel *Release, attachmentUUIDs []string) error
- func CreateRepositoryNotice(desc string) error
- func CreateUser(u *User) (err error)
- func CreateWebhook(w *Webhook) error
- func DeleteAccessTokenByID(id, userID int64) error
- func DeleteAttachment(a *Attachment, remove bool) error
- func DeleteAttachments(attachments []*Attachment, remove bool) (int, error)
- func DeleteAttachmentsByComment(commentID int64, remove bool) (int, error)
- func DeleteAttachmentsByIssue(issueID int64, remove bool) (int, error)
- func DeleteComment(comment *Comment) error
- func DeleteDeployKey(doer *User, id int64) error
- func DeleteEmailAddress(email *EmailAddress) (err error)
- func DeleteEmailAddresses(emails []*EmailAddress) (err error)
- func DeleteInactivateUsers() (err error)
- func DeleteIssueLabel(issue *Issue, label *Label, doer *User) (err error)
- func DeleteLabel(repoID, labelID int64) error
- func DeleteMilestoneByRepoID(repoID, id int64) error
- func DeleteMirrorByRepoID(repoID int64) error
- func DeleteMissingRepositories() error
- func DeleteNotice(id int64) error
- func DeleteNotices(start, end int64) error
- func DeleteNoticesByIDs(ids []int64) error
- func DeleteOldRepositoryArchives()
- func DeleteOrganization(org *User) (err error)
- func DeletePublicKey(doer *User, id int64) (err error)
- func DeleteReleaseByID(id int64, u *User, delTag bool) error
- func DeleteRepository(uid, repoID int64) error
- func DeleteRepositoryArchives() error
- func DeleteSource(source *LoginSource) error
- func DeleteTeam(t *Team) error
- func DeleteTwoFactorByID(id, userID int64) error
- func DeleteUpload(u *Upload) error
- func DeleteUploadByUUID(uuid string) error
- func DeleteUploads(uploads ...*Upload) (err error)
- func DeleteUser(u *User) (err error)
- func DeleteWebhookByOrgID(orgID, id int64) error
- func DeleteWebhookByRepoID(repoID, id int64) error
- func DeliverHooks()
- func DumpDatabase(filePath string, dbType string) error
- func FollowUser(userID, followID int64) (err error)
- func GetActiveOAuth2Providers() (map[string]OAuth2Provider, error)
- func GetExternalLogin(externalLoginUser *ExternalLoginUser) (bool, error)
- func GetLabelTemplateFile(name string) ([][2]string, error)
- func GetNotificationCount(user *User, status NotificationStatus) (int64, error)
- func GetPrivateRepositoryCount(u *User) (int64, error)
- func GetPublicRepositoryCount(u *User) (int64, error)
- func GetRawDiff(repoPath, commitID string, diffType RawDiffType, writer io.Writer) error
- func GetReleaseAttachments(rels ...*Release) (err error)
- func GetRepoIssueStats(repoID, uid int64, filterMode int, isPull bool) (numOpen int64, numClosed int64)
- func GetRepositoryCount(u *User) (int64, error)
- func GetUser(user *User) (bool, error)
- func GetUserEmailsByNames(names []string) []string
- func GetUserIDsByNames(names []string) []int64
- func GetUserSalt() (string, error)
- func GitFsck()
- func GitGcRepos() error
- func HandleCloneUserCredentials(url string, mosaics bool) string
- func HasAccess(user *User, repo *Repository, testMode AccessMode) (bool, error)
- func HasDeployKey(keyID, repoID int64) bool
- func HasIssueLabel(issueID, labelID int64) bool
- func HasTeamRepo(orgID, teamID, repoID int64) bool
- func InitDeliverHooks()
- func InitIssueIndexer()
- func InitMailRender(tmpls *template.Template)
- func InitOAuth2()
- func InitSyncMirrors()
- func InitTestPullRequests()
- func IsEmailUsed(email string) (bool, error)
- func IsErrAccessTokenEmpty(err error) bool
- func IsErrAccessTokenNotExist(err error) bool
- func IsErrAttachmentNotExist(err error) bool
- func IsErrBranchNotExist(err error) bool
- func IsErrCommentNotExist(err error) bool
- func IsErrDeployKeyAlreadyExist(err error) bool
- func IsErrDeployKeyNameAlreadyUsed(err error) bool
- func IsErrDeployKeyNotExist(err error) bool
- func IsErrEmailAlreadyUsed(err error) bool
- func IsErrExternalLoginUserAlreadyExist(err error) bool
- func IsErrExternalLoginUserNotExist(err error) bool
- func IsErrInvalidCloneAddr(err error) bool
- func IsErrInvalidTagName(err error) bool
- func IsErrIssueNotExist(err error) bool
- func IsErrKeyAccessDenied(err error) bool
- func IsErrKeyAlreadyExist(err error) bool
- func IsErrKeyNameAlreadyUsed(err error) bool
- func IsErrKeyNotExist(err error) bool
- func IsErrKeyUnableVerify(err error) bool
- func IsErrLabelNotExist(err error) bool
- func IsErrLastOrgOwner(err error) bool
- func IsErrLoginSourceAlreadyExist(err error) bool
- func IsErrLoginSourceInUse(err error) bool
- func IsErrLoginSourceNotExist(err error) bool
- func IsErrMilestoneNotExist(err error) bool
- func IsErrNamePatternNotAllowed(err error) bool
- func IsErrNameReserved(err error) bool
- func IsErrPullRequestAlreadyExists(err error) bool
- func IsErrPullRequestNotExist(err error) bool
- func IsErrReachLimitOfRepo(err error) bool
- func IsErrReleaseAlreadyExist(err error) bool
- func IsErrReleaseNotExist(err error) bool
- func IsErrRepoAlreadyExist(err error) bool
- func IsErrRepoFileAlreadyExist(err error) bool
- func IsErrRepoNotExist(err error) bool
- func IsErrRepoRedirectNotExist(err error) bool
- func IsErrTeamAlreadyExist(err error) bool
- func IsErrTwoFactorNotEnrolled(err error) bool
- func IsErrUpdateTaskNotExist(err error) bool
- func IsErrUploadNotExist(err error) bool
- func IsErrUserAlreadyExist(err error) bool
- func IsErrUserHasOrgs(err error) bool
- func IsErrUserNotAllowedCreateOrg(err error) bool
- func IsErrUserNotExist(err error) bool
- func IsErrUserOwnRepos(err error) bool
- func IsErrWebhookNotExist(err error) bool
- func IsErrWikiAlreadyExist(err error) bool
- func IsFollowing(userID, followID int64) bool
- func IsOrganizationMember(orgID, uid int64) bool
- func IsOrganizationOwner(orgID, uid int64) bool
- func IsPublicMembership(orgID, uid int64) bool
- func IsReleaseExist(repoID int64, tagName string) (bool, error)
- func IsRepositoryExist(u *User, repoName string) (bool, error)
- func IsStaring(userID, repoID int64) bool
- func IsTeamMember(orgID, teamID, userID int64) bool
- func IsUsableRepoName(name string) error
- func IsUsableTeamName(name string) error
- func IsUsableUsername(name string) error
- func IsUserExist(uid int64, name string) (bool, error)
- func IsValidHookContentType(name string) bool
- func IsValidHookTaskType(name string) bool
- func IsWatching(userID, repoID int64) bool
- func LinkAccountToUser(user *User, gothUser goth.User) error
- func LoadConfigs()
- func LoadRepoConfig()
- func LookupRepoRedirect(ownerID int64, repoName string) (int64, error)
- func MakeEmailPrimary(email *EmailAddress) error
- func MergePullRequestAction(actUser *User, repo *Repository, pull *Issue) error
- func MilestoneStats(repoID int64) (open int64, closed int64)
- func MirrorUpdate()
- func NewAccessToken(t *AccessToken) error
- func NewEngine() (err error)
- func NewIssue(repo *Repository, issue *Issue, labelIDs []int64, uuids []string) (err error)
- func NewIssueLabel(issue *Issue, label *Label, doer *User) (err error)
- func NewIssueLabels(issue *Issue, labels []*Label, doer *User) (err error)
- func NewLabels(labels ...*Label) error
- func NewMilestone(m *Milestone) (err error)
- func NewPullRequest(repo *Repository, pull *Issue, labelIDs []int64, uuids []string, ...) (err error)
- func NewRepoAction(u *User, repo *Repository) (err error)
- func NewRepoContext()
- func NewRepoRedirect(ownerID, repoID int64, oldRepoName, newRepoName string) error
- func NewTeam(t *Team) (err error)
- func NewTestEngine(x *xorm.Engine) (err error)
- func NewTwoFactor(t *TwoFactor) error
- func NotifyWatchers(act *Action) error
- func Ping() error
- func PrepareWebhooks(repo *Repository, event HookEventType, p api.Payloader) error
- func PushUpdate(opts PushUpdateOptions) (err error)
- func ReinitMissingRepositories() error
- func RemoveAccountLink(user *User, loginSourceID int64) (int64, error)
- func RemoveAllWithNotice(title, path string)
- func RemoveLFSMetaObjectByOid(oid string) error
- func RemoveOrgUser(orgID, userID int64) error
- func RemoveTeamMember(team *Team, userID int64) error
- func RenameRepoAction(actUser *User, oldRepoName string, repo *Repository) error
- func RepoPath(userName, repoName string) string
- func RewriteAllPublicKeys() error
- func SMTPAuth(a smtp.Auth, cfg *SMTPConfig) error
- func SSHKeyGenParsePublicKey(key string) (string, int, error)
- func SSHNativeParsePublicKey(keyLine string) (string, int, error)
- func SearchIssuesByKeyword(repoID int64, keyword string) ([]int64, error)
- func SendActivateAccountMail(c *macaron.Context, u *User)
- func SendActivateEmailMail(c *macaron.Context, u *User, email *EmailAddress)
- func SendCollaboratorMail(u, doer *User, repo *Repository)
- func SendIssueCommentMail(issue *Issue, doer *User, tos []string)
- func SendIssueMentionMail(issue *Issue, doer *User, tos []string)
- func SendRegisterNotifyMail(c *macaron.Context, u *User)
- func SendResetPasswordMail(c *macaron.Context, u *User)
- func SendTestMail(email string) error
- func SendUserMail(c *macaron.Context, u *User, tpl base.TplName, code, subject, info string)
- func SetEngine() (err error)
- func SetNotificationStatus(notificationID int64, user *User, status NotificationStatus) error
- func SlackLinkFormatter(url string, text string) string
- func SlackShortTextFormatter(s string) string
- func SlackTextFormatter(s string) string
- func SortReleases(rels []*Release)
- func StarRepo(userID, repoID int64, star bool) error
- func SyncMirrors()
- func SyncRepositoryHooks() error
- func TestPullRequests()
- func ToWikiPageName(urlString string) string
- func ToWikiPageURL(name string) string
- func TransferOwnership(doer *User, newOwnerName string, repo *Repository) error
- func TransferRepoAction(doer, oldOwner *User, repo *Repository) error
- func UnfollowUser(userID, followID int64) (err error)
- func UpdateAccessToken(t *AccessToken) error
- func UpdateComment(c *Comment) error
- func UpdateDeployKey(key *DeployKey) error
- func UpdateHookTask(t *HookTask) error
- func UpdateIssue(issue *Issue) error
- func UpdateIssueCols(issue *Issue, cols ...string) error
- func UpdateIssueIndexer(issue *Issue)
- func UpdateIssueMentions(e Engine, issueID int64, mentions []string) error
- func UpdateIssueUserByAssignee(issue *Issue) (err error)
- func UpdateIssueUserByRead(uid, issueID int64) error
- func UpdateIssueUsersByMentions(e Engine, issueID int64, uids []int64) error
- func UpdateIssuesCommit(doer *User, repo *Repository, commits []*PushCommit) error
- func UpdateLabel(l *Label) error
- func UpdateLocalCopyBranch(repoPath, localPath, branch string) error
- func UpdateMilestone(m *Milestone) error
- func UpdateMirror(m *Mirror) error
- func UpdateProtectedBranch(protectedBranch *ProtectedBranch) error
- func UpdatePublicKey(key *PublicKey) error
- func UpdateRelease(gitRepo *git.Repository, rel *Release, attachmentUUIDs []string) (err error)
- func UpdateRepository(repo *Repository, visibilityChanged bool) (err error)
- func UpdateRepositoryUnits(repo *Repository, units []RepoUnit) (err error)
- func UpdateSource(source *LoginSource) error
- func UpdateTeam(t *Team, authChanged bool) (err error)
- func UpdateTwoFactor(t *TwoFactor) error
- func UpdateUser(u *User) error
- func UpdateUserSetting(u *User) error
- func UpdateWebhook(w *Webhook) error
- func UploadLocalPath(uuid string) string
- func UserPath(userName string) string
- func ValidateCommitsWithEmails(oldCommits *list.List) *list.List
- func WatchRepo(userID, repoID int64, watch bool) (err error)
- func WikiPath(userName, repoName string) string
- type Access
- type AccessMode
- type AccessToken
- type AccessibleReposEnvironment
- type Action
- func (a *Action) AfterSet(colName string, _ xorm.Cell)
- func (a *Action) BeforeInsert()
- func (a *Action) GetActUserName() string
- func (a *Action) GetBranch() string
- func (a *Action) GetContent() string
- func (a *Action) GetCreate() time.Time
- func (a *Action) GetIssueContent() string
- func (a *Action) GetIssueInfos() []string
- func (a *Action) GetIssueTitle() string
- func (a *Action) GetOpType() int
- func (a *Action) GetRepoLink() string
- func (a *Action) GetRepoName() string
- func (a *Action) GetRepoPath() string
- func (a *Action) GetRepoUserName() string
- func (a *Action) ShortActUserName() string
- func (a *Action) ShortRepoName() string
- func (a *Action) ShortRepoPath() string
- func (a *Action) ShortRepoUserName() string
- type ActionType
- type Attachment
- type Branch
- type CloneLink
- type Collaboration
- type Collaborator
- type Comment
- func CreateComment(opts *CreateCommentOptions) (comment *Comment, err error)
- func CreateIssueComment(doer *User, repo *Repository, issue *Issue, content string, ...) (*Comment, error)
- func GetCommentByID(id int64) (*Comment, error)
- func GetCommentsByIssueID(issueID int64) ([]*Comment, error)
- func GetCommentsByIssueIDSince(issueID, since int64) ([]*Comment, error)
- func GetCommentsByRepoIDSince(repoID, since int64) ([]*Comment, error)
- func (c *Comment) APIFormat() *api.Comment
- func (c *Comment) AfterDelete()
- func (c *Comment) AfterSet(colName string, _ xorm.Cell)
- func (c *Comment) BeforeInsert()
- func (c *Comment) BeforeUpdate()
- func (c *Comment) EventTag() string
- func (c *Comment) HTMLURL() string
- func (c *Comment) HashTag() string
- func (c *Comment) IssueURL() string
- func (c *Comment) LoadAssignees() error
- func (c *Comment) LoadLabel() error
- func (c *Comment) LoadMilestone() error
- func (c *Comment) MailParticipants(e Engine, opType ActionType, issue *Issue) (err error)
- func (c *Comment) PRURL() string
- type CommentTag
- type CommentType
- type CommitRepoActionOptions
- type CreateCommentOptions
- type CreateRepoOptions
- type DeleteRepoFileOptions
- type DeployKey
- type Diff
- type DiffFile
- type DiffFileType
- type DiffLine
- type DiffLineType
- type DiffSection
- type EmailAddress
- type Engine
- type ErrAccessTokenEmpty
- type ErrAccessTokenNotExist
- type ErrAttachmentNotExist
- type ErrBranchNotExist
- type ErrCommentNotExist
- type ErrDeployKeyAlreadyExist
- type ErrDeployKeyNameAlreadyUsed
- type ErrDeployKeyNotExist
- type ErrEmailAlreadyUsed
- type ErrExternalLoginUserAlreadyExist
- type ErrExternalLoginUserNotExist
- type ErrInvalidCloneAddr
- type ErrInvalidTagName
- type ErrIssueNotExist
- type ErrKeyAccessDenied
- type ErrKeyAlreadyExist
- type ErrKeyNameAlreadyUsed
- type ErrKeyNotExist
- type ErrKeyUnableVerify
- type ErrLabelNotExist
- type ErrLastOrgOwner
- type ErrLoginSourceAlreadyExist
- type ErrLoginSourceInUse
- type ErrLoginSourceNotExist
- type ErrMilestoneNotExist
- type ErrNamePatternNotAllowed
- type ErrNameReserved
- type ErrPullRequestAlreadyExists
- type ErrPullRequestNotExist
- type ErrReachLimitOfRepo
- type ErrReleaseAlreadyExist
- type ErrReleaseNotExist
- type ErrRepoAlreadyExist
- type ErrRepoFileAlreadyExist
- type ErrRepoNotExist
- type ErrRepoRedirectNotExist
- type ErrTeamAlreadyExist
- type ErrTwoFactorNotEnrolled
- type ErrUpdateTaskNotExist
- type ErrUploadNotExist
- type ErrUserAlreadyExist
- type ErrUserHasOrgs
- type ErrUserNotAllowedCreateOrg
- type ErrUserNotExist
- type ErrUserOwnRepos
- type ErrWebhookNotExist
- type ErrWikiAlreadyExist
- type ExternalLoginUser
- type ExternalTrackerConfig
- type ExternalWikiConfig
- type Follow
- type GraphItem
- type GraphItems
- type HookContentType
- type HookEvent
- type HookEventType
- type HookEvents
- type HookRequest
- type HookResponse
- type HookStatus
- type HookTask
- type HookTaskType
- type Issue
- func (issue *Issue) APIFormat() *api.Issue
- func (issue *Issue) APIURL() string
- func (issue *Issue) AddLabel(doer *User, label *Label) error
- func (issue *Issue) AddLabels(doer *User, labels []*Label) error
- func (issue *Issue) AfterSet(colName string, _ xorm.Cell)
- func (issue *Issue) BeforeInsert()
- func (issue *Issue) BeforeUpdate()
- func (issue *Issue) ChangeAssignee(doer *User, assigneeID int64) (err error)
- func (issue *Issue) ChangeContent(doer *User, content string) (err error)
- func (issue *Issue) ChangeStatus(doer *User, repo *Repository, isClosed bool) (err error)
- func (issue *Issue) ChangeTitle(doer *User, title string) (err error)
- func (issue *Issue) ClearLabels(doer *User) (err error)
- func (issue *Issue) DiffURL() string
- func (issue *Issue) GetAssignee() (err error)
- func (issue *Issue) GetIsRead(userID int64) error
- func (issue *Issue) GetPullRequest() (pr *PullRequest, err error)
- func (issue *Issue) HTMLURL() string
- func (issue *Issue) HasLabel(labelID int64) bool
- func (issue *Issue) HashTag() string
- func (issue *Issue) IsPoster(uid int64) bool
- func (issue *Issue) LoadAttributes() error
- func (issue *Issue) MailParticipants() (err error)
- func (issue *Issue) PatchURL() string
- func (issue *Issue) ReadBy(userID int64) error
- func (issue *Issue) RemoveLabel(doer *User, label *Label) error
- func (issue *Issue) ReplaceLabels(labels []*Label, doer *User) (err error)
- func (issue *Issue) State() api.StateType
- type IssueLabel
- type IssueList
- type IssueStats
- type IssueStatsOptions
- type IssueUser
- type IssuesOptions
- type KeyType
- type LDAPConfig
- type LFSMetaObject
- type LFSTokenResponse
- type Label
- func GetLabelByID(id int64) (*Label, error)
- func GetLabelInRepoByID(repoID, labelID int64) (*Label, error)
- func GetLabelInRepoByName(repoID int64, labelName string) (*Label, error)
- func GetLabelsByIssueID(issueID int64) ([]*Label, error)
- func GetLabelsByRepoID(repoID int64, sortType string) ([]*Label, error)
- func GetLabelsInRepoByIDs(repoID int64, labelIDs []int64) ([]*Label, error)
- type LoginSource
- func (source *LoginSource) AfterSet(colName string, _ xorm.Cell)
- func (source *LoginSource) BeforeInsert()
- func (source *LoginSource) BeforeSet(colName string, val xorm.Cell)
- func (source *LoginSource) BeforeUpdate()
- func (source *LoginSource) HasTLS() bool
- func (source *LoginSource) IsDLDAP() bool
- func (source *LoginSource) IsLDAP() bool
- func (source *LoginSource) IsOAuth2() bool
- func (source *LoginSource) IsPAM() bool
- func (source *LoginSource) IsSMTP() bool
- func (source *LoginSource) LDAP() *LDAPConfig
- func (source *LoginSource) OAuth2() *OAuth2Config
- func (source *LoginSource) PAM() *PAMConfig
- func (source *LoginSource) SMTP() *SMTPConfig
- func (source *LoginSource) SkipVerify() bool
- func (source *LoginSource) TypeName() string
- func (source *LoginSource) UseTLS() bool
- type LoginType
- type MigrateRepoOptions
- type Milestone
- type Mirror
- type MirrorRepositoryList
- type NewIssueOptions
- type Notice
- type NoticeType
- type Notification
- type NotificationSource
- type NotificationStatus
- type OAuth2Config
- type OAuth2Provider
- type OrgUser
- type PAMConfig
- type ProtectedBranch
- type PublicKey
- type PullRequest
- func GetPullRequestByID(id int64) (*PullRequest, error)
- func GetPullRequestByIndex(repoID int64, index int64) (*PullRequest, error)
- func GetPullRequestByIssueID(issueID int64) (*PullRequest, error)
- func GetUnmergedPullRequest(headRepoID, baseRepoID int64, headBranch, baseBranch string) (*PullRequest, error)
- func GetUnmergedPullRequestsByBaseInfo(repoID int64, branch string) ([]*PullRequest, error)
- func GetUnmergedPullRequestsByHeadInfo(repoID int64, branch string) ([]*PullRequest, error)
- func PullRequests(baseRepoID int64, opts *PullRequestsOptions) ([]*PullRequest, int64, error)
- func (pr *PullRequest) APIFormat() *api.PullRequest
- func (pr *PullRequest) AddToTaskQueue()
- func (pr *PullRequest) AfterSet(colName string, _ xorm.Cell)
- func (pr *PullRequest) BeforeUpdate()
- func (pr *PullRequest) CanAutoMerge() bool
- func (pr *PullRequest) GetBaseRepo() (err error)
- func (pr *PullRequest) GetHeadRepo() error
- func (pr *PullRequest) IsChecking() bool
- func (pr *PullRequest) LoadAttributes() error
- func (pr *PullRequest) LoadIssue() (err error)
- func (pr *PullRequest) Merge(doer *User, baseGitRepo *git.Repository) (err error)
- func (pr *PullRequest) PushToBaseRepo() (err error)
- func (pr *PullRequest) Update() error
- func (pr *PullRequest) UpdateCols(cols ...string) error
- func (pr *PullRequest) UpdatePatch() (err error)
- type PullRequestList
- type PullRequestStatus
- type PullRequestType
- type PullRequestsOptions
- type PushCommit
- type PushCommits
- type PushUpdateOptions
- type RawDiffType
- type Release
- type RepoRedirect
- type RepoUnit
- func (r *RepoUnit) AfterSet(colName string, _ xorm.Cell)
- func (r *RepoUnit) BeforeSet(colName string, val xorm.Cell)
- func (r *RepoUnit) CodeConfig() *UnitConfig
- func (r *RepoUnit) CommitsConfig() *UnitConfig
- func (r *RepoUnit) ExternalTrackerConfig() *ExternalTrackerConfig
- func (r *RepoUnit) ExternalWikiConfig() *ExternalWikiConfig
- func (r *RepoUnit) IssuesConfig() *UnitConfig
- func (r *RepoUnit) PullRequestsConfig() *UnitConfig
- func (r *RepoUnit) ReleasesConfig() *UnitConfig
- func (r *RepoUnit) Unit() Unit
- type Repository
- func CleanUpMigrateInfo(repo *Repository) (*Repository, error)
- func CreateRepository(u *User, opts CreateRepoOptions) (_ *Repository, err error)
- func ForkRepository(u *User, oldRepo *Repository, name, desc string) (_ *Repository, err error)
- func GetRepositoriesByForkID(forkID int64) ([]*Repository, error)
- func GetRepositoryByID(id int64) (*Repository, error)
- func GetRepositoryByName(ownerID int64, name string) (*Repository, error)
- func GetRepositoryByRef(ref string) (*Repository, error)
- func GetStarredRepos(userID int64, private bool) ([]*Repository, error)
- func GetUserMirrorRepositories(userID int64) ([]*Repository, error)
- func GetUserRepositories(userID int64, private bool, page, pageSize int, orderBy string) ([]*Repository, error)
- func GetWatchedRepos(userID int64, private bool) ([]*Repository, error)
- func HasForkedRepo(ownerID, repoID int64) (*Repository, bool)
- func MigrateRepository(u *User, opts MigrateRepoOptions) (*Repository, error)
- func (repo *Repository) APIFormat(mode AccessMode) *api.Repository
- func (repo *Repository) APIURL() string
- func (repo *Repository) AddCollaborator(u *User) error
- func (repo *Repository) AddProtectedBranch(branchName string, canPush bool) error
- func (repo *Repository) AddWikiPage(doer *User, wikiPath, content, message string) error
- func (repo *Repository) AfterSet(colName string, _ xorm.Cell)
- func (repo *Repository) AllowsPulls() bool
- func (repo *Repository) BeforeInsert()
- func (repo *Repository) BeforeUpdate()
- func (repo *Repository) CanBeForked() bool
- func (repo *Repository) CanEnableEditor() bool
- func (repo *Repository) CanEnablePulls() bool
- func (repo *Repository) ChangeCollaborationAccessMode(uid int64, mode AccessMode) error
- func (repo *Repository) ChangeProtectedBranch(id int64, canPush bool) error
- func (repo *Repository) CheckoutNewBranch(oldBranch, newBranch string) error
- func (repo *Repository) CloneLink() (cl *CloneLink)
- func (repo *Repository) ComposeCompareURL(oldCommitID, newCommitID string) string
- func (repo *Repository) ComposeMetas() map[string]string
- func (repo *Repository) CreateNewBranch(doer *User, oldBranchName, branchName string) (err error)
- func (repo *Repository) DeleteCollaboration(uid int64) (err error)
- func (repo *Repository) DeleteProtectedBranch(id int64) (err error)
- func (repo *Repository) DeleteRepoFile(doer *User, opts DeleteRepoFileOptions) (err error)
- func (repo *Repository) DeleteWiki() error
- func (repo *Repository) DeleteWikiPage(doer *User, wikiPath string) (err error)
- func (repo *Repository) DescriptionHTML() template.HTML
- func (repo *Repository) DiscardLocalRepoBranchChanges(branch string) error
- func (repo *Repository) EditWikiPage(doer *User, oldWikiPath, wikiPath, content, message string) error
- func (repo *Repository) EnableUnit(tp UnitType) bool
- func (repo *Repository) FullName() string
- func (repo *Repository) GetAssigneeByID(userID int64) (*User, error)
- func (repo *Repository) GetAssignees() (_ []*User, err error)
- func (repo *Repository) GetBaseRepo() (err error)
- func (repo *Repository) GetBranch(branch string) (*Branch, error)
- func (repo *Repository) GetBranches() ([]*Branch, error)
- func (repo *Repository) GetCollaborators() ([]*Collaborator, error)
- func (repo *Repository) GetDiffPreview(branch, treePath, content string) (diff *Diff, err error)
- func (repo *Repository) GetForks() ([]*Repository, error)
- func (repo *Repository) GetMilestoneByID(milestoneID int64) (*Milestone, error)
- func (repo *Repository) GetMirror() (err error)
- func (repo *Repository) GetOwner() error
- func (repo *Repository) GetProtectedBranches() ([]*ProtectedBranch, error)
- func (repo *Repository) GetStargazers(page int) ([]*User, error)
- func (repo *Repository) GetUnit(tp UnitType) (*RepoUnit, error)
- func (repo *Repository) GetUserFork(userID int64) (*Repository, error)
- func (repo *Repository) GetWatchers(page int) ([]*User, error)
- func (repo *Repository) GitConfigPath() string
- func (repo *Repository) HTMLURL() string
- func (repo *Repository) HasAccess(u *User) bool
- func (repo *Repository) HasWiki() bool
- func (repo *Repository) InitWiki() error
- func (repo *Repository) IsCollaborator(userID int64) (bool, error)
- func (repo *Repository) IsOwnedBy(userID int64) bool
- func (repo *Repository) IssueStats(uid int64, filterMode int, isPull bool) (int64, int64)
- func (repo *Repository) Link() string
- func (repo *Repository) LocalCopyPath() string
- func (repo *Repository) LocalWikiPath() string
- func (repo *Repository) MustGetUnit(tp UnitType) *RepoUnit
- func (repo *Repository) MustOwner() *User
- func (repo *Repository) NextIssueIndex() int64
- func (repo *Repository) PatchPath(index int64) (string, error)
- func (repo *Repository) RecalculateAccesses() error
- func (repo *Repository) RelLink() string
- func (repo *Repository) RepoPath() string
- func (repo *Repository) SavePatch(index int64, patch []byte) error
- func (repo *Repository) UpdateDefaultBranch() error
- func (repo *Repository) UpdateLocalCopyBranch(branch string) error
- func (repo *Repository) UpdateLocalWiki() error
- func (repo *Repository) UpdateRepoFile(doer *User, opts UpdateRepoFileOptions) (err error)
- func (repo *Repository) UploadRepoFiles(doer *User, opts UploadRepoFileOptions) (err error)
- func (repo *Repository) WikiCloneLink() *CloneLink
- func (repo *Repository) WikiPath() string
- type RepositoryList
- type SMTPConfig
- type SearchRepoOptions
- type SearchUserOptions
- type SlackAttachment
- type SlackMeta
- type SlackPayload
- type Star
- type Statistic
- type Team
- func (t *Team) AddMember(userID int64) error
- func (t *Team) AddRepository(repo *Repository) (err error)
- func (t *Team) GetMembers() (err error)
- func (t *Team) GetRepositories() error
- func (t *Team) HasRepository(repoID int64) bool
- func (t *Team) IsMember(userID int64) bool
- func (t *Team) IsOwnerTeam() bool
- func (t *Team) RemoveMember(userID int64) error
- func (t *Team) RemoveRepository(repoID int64) error
- type TeamRepo
- type TeamUser
- type TwoFactor
- func (t *TwoFactor) AfterSet(colName string, _ xorm.Cell)
- func (t *TwoFactor) BeforeInsert()
- func (t *TwoFactor) BeforeUpdate()
- func (t *TwoFactor) GenerateScratchToken() error
- func (t *TwoFactor) SetSecret(secret string) error
- func (t *TwoFactor) ValidateTOTP(passcode string) (bool, error)
- func (t *TwoFactor) VerifyScratchToken(token string) bool
- type Unit
- type UnitConfig
- type UnitType
- type UpdateRepoFileOptions
- type Upload
- type UploadRepoFileOptions
- type User
- func ExternalUserLogin(user *User, login, password string, source *LoginSource, autoRegister bool) (*User, error)
- func GetAssigneeByID(repo *Repository, userID int64) (*User, error)
- func GetOrgByName(name string) (*User, error)
- func GetOrgsByUserID(userID int64, showAll bool) ([]*User, error)
- func GetOwnedOrgsByUserID(userID int64) ([]*User, error)
- func GetOwnedOrgsByUserIDDesc(userID int64, desc string) ([]*User, error)
- func GetTeamMembers(teamID int64) ([]*User, error)
- func GetUserByEmail(email string) (*User, error)
- func GetUserByID(id int64) (*User, error)
- func GetUserByKeyID(keyID int64) (*User, error)
- func GetUserByName(name string) (*User, error)
- func GetUsersByIDs(ids []int64) ([]*User, error)
- func LoginViaLDAP(user *User, login, password string, source *LoginSource, autoRegister bool) (*User, error)
- func LoginViaPAM(user *User, login, password string, sourceID int64, cfg *PAMConfig, ...) (*User, error)
- func LoginViaSMTP(user *User, login, password string, sourceID int64, cfg *SMTPConfig, ...) (*User, error)
- func NewGhostUser() *User
- func Organizations(opts *SearchUserOptions) ([]*User, error)
- func SearchUserByName(opts *SearchUserOptions) (users []*User, _ int64, _ error)
- func UserSignIn(username, password string) (*User, error)
- func Users(opts *SearchUserOptions) ([]*User, error)
- func ValidateCommitWithEmail(c *git.Commit) *User
- func VerifyUserActiveCode(code string) (user *User)
- func (u *User) APIFormat() *api.User
- func (org *User) AccessibleReposEnv(userID int64) (AccessibleReposEnvironment, error)
- func (org *User) AddMember(uid int64) error
- func (u *User) AfterSet(colName string, _ xorm.Cell)
- func (u *User) AvatarLink() string
- func (u *User) BeforeInsert()
- func (u *User) BeforeUpdate()
- func (u *User) CanCreateOrganization() bool
- func (u *User) CanCreateRepo() bool
- func (u *User) CanEditGitHook() bool
- func (u *User) CanImportLocal() bool
- func (u *User) CustomAvatarPath() string
- func (u *User) DashboardLink() string
- func (u *User) DeleteAvatar() error
- func (u *User) DisplayName() string
- func (u *User) EncodePasswd()
- func (u *User) GenerateActivateCode() string
- func (u *User) GenerateEmailActivateCode(email string) string
- func (u *User) GenerateRandomAvatar() error
- func (u *User) GetAccessRepoIDs() ([]int64, error)
- func (user *User) GetAccessibleRepositories(limit int) (repos []*Repository, _ error)
- func (u *User) GetFollowers(page int) ([]*User, error)
- func (u *User) GetFollowing(page int) ([]*User, error)
- func (org *User) GetMembers() error
- func (u *User) GetMirrorRepositories() ([]*Repository, error)
- func (u *User) GetOrgRepositoryIDs() ([]int64, error)
- func (u *User) GetOrganizationCount() (int64, error)
- func (u *User) GetOrganizations(all bool) error
- func (u *User) GetOwnedOrganizations() (err error)
- func (org *User) GetOwnerTeam() (*Team, error)
- func (u *User) GetRepositories(page, pageSize int) (err error)
- func (user *User) GetRepositoryAccesses() (map[*Repository]AccessMode, error)
- func (u *User) GetRepositoryIDs() ([]int64, error)
- func (u *User) GetStarredRepoCount(private bool) (int64, error)
- func (u *User) GetStarredRepos(private bool, page, pageSize int, orderBy string) (repos RepositoryList, err error)
- func (org *User) GetTeam(name string) (*Team, error)
- func (org *User) GetTeams() error
- func (org *User) GetUserTeamIDs(userID int64) ([]int64, error)
- func (org *User) GetUserTeams(userID int64) ([]*Team, error)
- func (u *User) HTMLURL() string
- func (u *User) HasForkedRepo(repoID int64) bool
- func (u *User) HomeLink() string
- func (u *User) IsAdminOfRepo(repo *Repository) bool
- func (u *User) IsFollowing(followID int64) bool
- func (u *User) IsLocal() bool
- func (u *User) IsMailable() bool
- func (u *User) IsOAuth2() bool
- func (org *User) IsOrgMember(uid int64) bool
- func (u *User) IsOrganization() bool
- func (org *User) IsOwnedBy(uid int64) bool
- func (u *User) IsPasswordSet() bool
- func (u *User) IsPublicMember(orgID int64) bool
- func (u *User) IsUserOrgOwner(orgID int64) bool
- func (u *User) IsWriterOfRepo(repo *Repository) bool
- func (u *User) NewGitSig() *git.Signature
- func (u *User) RelAvatarLink() string
- func (org *User) RemoveMember(uid int64) error
- func (org *User) RemoveOrgRepo(repoID int64) error
- func (u *User) RepoCreationNum() int
- func (u *User) SetLastLogin()
- func (u *User) ShortName(length int) string
- func (u *User) UpdateDiffViewStyle(style string) error
- func (u *User) UploadAvatar(data []byte) error
- func (u *User) ValidatePassword(passwd string) bool
- type UserCommit
- type UserType
- type Watch
- type Webhook
- func GetActiveWebhooksByOrgID(orgID int64) (ws []*Webhook, err error)
- func GetActiveWebhooksByRepoID(repoID int64) ([]*Webhook, error)
- func GetWebhookByOrgID(orgID, id int64) (*Webhook, error)
- func GetWebhookByRepoID(repoID, id int64) (*Webhook, error)
- func GetWebhooksByOrgID(orgID int64) (ws []*Webhook, err error)
- func GetWebhooksByRepoID(repoID int64) ([]*Webhook, error)
- func (w *Webhook) AfterSet(colName string, _ xorm.Cell)
- func (w *Webhook) BeforeInsert()
- func (w *Webhook) BeforeUpdate()
- func (w *Webhook) EventsArray() []string
- func (w *Webhook) GetSlackHook() *SlackMeta
- func (w *Webhook) HasCreateEvent() bool
- func (w *Webhook) HasPullRequestEvent() bool
- func (w *Webhook) HasPushEvent() bool
- func (w *Webhook) History(page int) ([]*HookTask, error)
- func (w *Webhook) UpdateEvent() error
Constants ¶
const ( FilterModeAll = iota FilterModeAssign FilterModeCreate FilterModeMention )
Filter modes.
const ( // LFSMetaFileIdentifier is the string appearing at the first line of LFS pointer files. // https://github.com/git-lfs/git-lfs/blob/master/docs/spec.md LFSMetaFileIdentifier = "version https://git-lfs.github.com/spec/v1" // LFSMetaFileOidPrefix appears in LFS pointer files on a line before the sha256 hash. LFSMetaFileOidPrefix = "oid sha256:" )
const ( SMTPPlain = "PLAIN" SMTPLogin = "LOGIN" )
SMTP authentication type names.
const ( // KeyTypeUser specifies the user key KeyTypeUser = iota + 1 // KeyTypeDeploy specifies the deploy key KeyTypeDeploy )
const ( EnvRepoName = "GITEA_REPO_NAME" EnvRepoUsername = "GITEA_REPO_USER_NAME" EnvRepoUserSalt = "GITEA_REPO_USER_SALT" EnvRepoIsWiki = "GITEA_REPO_IS_WIKI" EnvPusherName = "GITEA_PUSHER_NAME" EnvPusherID = "GITEA_PUSHER_ID" )
env keys for git hooks need
const ( HookStatusNone = iota HookStatusSucceed HookStatusFail )
Possible statuses of a web hook
const (
// ProtectedBranchRepoID protected Repo ID
ProtectedBranchRepoID = "GITEA_REPO_ID"
)
Variables ¶
var ( // HasEngine specifies if we have a xorm.Engine HasEngine bool // DbCfg holds the database settings DbCfg struct { Type, Host, Name, User, Passwd, Path, SSLMode string } // EnableSQLite3 use SQLite3 EnableSQLite3 bool // EnableTiDB enable TiDB EnableTiDB bool )
var ( // ErrOrgNotExist organization does not exist ErrOrgNotExist = errors.New("Organization does not exist") // ErrTeamNotExist team does not exist ErrTeamNotExist = errors.New("Team does not exist") )
var ( // ErrRepoFileNotExist repository file does not exist error ErrRepoFileNotExist = errors.New("Repository file does not exist") // ErrRepoFileNotLoaded repository file not loaded error ErrRepoFileNotLoaded = errors.New("Repository file not loaded") // ErrMirrorNotExist mirror does not exist error ErrMirrorNotExist = errors.New("Mirror does not exist") // ErrInvalidReference invalid reference specified error ErrInvalidReference = errors.New("Invalid reference specified") // ErrNameEmpty name is empty error ErrNameEmpty = errors.New("Name is empty") )
var ( // Gitignores contains the gitiginore files Gitignores []string // Licenses contains the license files Licenses []string // Readmes contains the readme files Readmes []string // LabelTemplates contains the label template files LabelTemplates []string // ItemsPerPage maximum items per page in forks, watchers and stars of a repo ItemsPerPage = 40 )
var ( UnitCode = Unit{ UnitTypeCode, "repo.code", "/", "repo.code_desc", 0, } UnitIssues = Unit{ UnitTypeIssues, "repo.issues", "/issues", "repo.issues_desc", 1, } UnitExternalTracker = Unit{ UnitTypeExternalTracker, "repo.issues", "/issues", "repo.issues_desc", 1, } UnitPullRequests = Unit{ UnitTypePullRequests, "repo.pulls", "/pulls", "repo.pulls_desc", 2, } UnitCommits = Unit{ UnitTypeCommits, "repo.commits", "/commits/master", "repo.commits_desc", 3, } UnitReleases = Unit{ UnitTypeReleases, "repo.releases", "/releases", "repo.releases_desc", 4, } UnitWiki = Unit{ UnitTypeWiki, "repo.wiki", "/wiki", "repo.wiki_desc", 5, } UnitExternalWiki = Unit{ UnitTypeExternalWiki, "repo.wiki", "/wiki", "repo.wiki_desc", 5, } UnitSettings = Unit{ UnitTypeSettings, "repo.settings", "/settings", "repo.settings_desc", 6, } // MustRepoUnits contains the units could be disabled currently MustRepoUnits = []UnitType{ UnitTypeCode, UnitTypeCommits, UnitTypeReleases, UnitTypeSettings, } // Units contains all the units Units = map[UnitType]Unit{ UnitTypeCode: UnitCode, UnitTypeIssues: UnitIssues, UnitTypeExternalTracker: UnitExternalTracker, UnitTypePullRequests: UnitPullRequests, UnitTypeCommits: UnitCommits, UnitTypeReleases: UnitReleases, UnitTypeWiki: UnitWiki, UnitTypeExternalWiki: UnitExternalWiki, UnitTypeSettings: UnitSettings, } )
Enumerate all the units
var ( // 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 login source is unknown error ErrUnsupportedLoginType = errors.New("Login source is unknown") )
var ( // ErrEmailAddressNotExist email address not exist ErrEmailAddressNotExist = errors.New("Email address does not exist") )
var ( // ErrLFSObjectNotExist is returned from lfs models functions in order // to differentiate between database and missing object errors. ErrLFSObjectNotExist = errors.New("LFS Meta object does not exist") )
var ( // ErrUnitNotExist organization does not exist ErrUnitNotExist = errors.New("Unit does not exist") )
var HookQueue = sync.NewUniqueQueue(setting.Webhook.QueueLength)
HookQueue is a global queue of web hooks
var LoginNames = map[LoginType]string{ LoginLDAP: "LDAP (via BindDN)", LoginDLDAP: "LDAP (simple auth)", LoginSMTP: "SMTP", LoginPAM: "PAM", LoginOAuth2: "OAuth2", }
LoginNames contains the name of LoginType values.
var MirrorQueue = sync.NewUniqueQueue(setting.Repository.MirrorQueueLength)
MirrorQueue holds an UniqueQueue object of the mirror
var OAuth2Providers = map[string]OAuth2Provider{
"github": {Name: "github", DisplayName: "GitHub", Image: "/img/github.png"},
}
OAuth2Providers contains the map of registered OAuth2 providers in Gitea (based on goth) key is used to map the OAuth2Provider with the goth provider type (also in LoginSource.OAuth2Config.Provider) value is used to store display data
var SMTPAuths = []string{SMTPPlain, SMTPLogin}
SMTPAuths contains available SMTP authentication type names.
var SecurityProtocolNames = map[ldap.SecurityProtocol]string{ ldap.SecurityProtocolUnencrypted: "Unencrypted", ldap.SecurityProtocolLDAPS: "LDAPS", ldap.SecurityProtocolStartTLS: "StartTLS", }
SecurityProtocolNames contains the name of SecurityProtocol values.
Functions ¶
func AddDeletePRBranchComment ¶ added in v1.1.0
func AddDeletePRBranchComment(doer *User, repo *Repository, issueID int64, branchName string) error
AddDeletePRBranchComment adds delete branch comment for pull request issue
func AddEmailAddress ¶
func AddEmailAddress(email *EmailAddress) error
AddEmailAddress adds an email address to given user.
func AddEmailAddresses ¶
func AddEmailAddresses(emails []*EmailAddress) error
AddEmailAddresses adds an email address to given user.
func AddOrgUser ¶
AddOrgUser adds new user to given organization.
func AddTeamMember ¶
AddTeamMember adds new membership of given team to given organization, the user will have membership to given organization automatically when needed.
func AddTestPullRequestTask ¶
AddTestPullRequestTask adds new test tasks by given head/base repository and head/base branch, and generate new patch for testing as needed.
func AttachmentLocalPath ¶
AttachmentLocalPath returns where attachment is stored in local file system based on given UUID.
func Cell2Int64 ¶
Cell2Int64 converts a xorm.Cell type to int64, and handles possible irregular cases.
func ChangeMilestoneAssign ¶
ChangeMilestoneAssign changes assignment of milestone for issue.
func ChangeMilestoneStatus ¶
ChangeMilestoneStatus changes the milestone open/closed status.
func ChangeOrgUserStatus ¶
ChangeOrgUserStatus changes public or private membership status.
func ChangeRepositoryName ¶
ChangeRepositoryName changes all corresponding setting from old repository name to new one.
func ChangeUserName ¶
ChangeUserName changes all corresponding setting from old user name to new one.
func ChangeUsernameInPullRequests ¶
ChangeUsernameInPullRequests changes the name of head_user_name
func CheckPublicKeyString ¶
CheckPublicKeyString checks if the given public key string is recognized by SSH. It returns the actual public key line on success.
func CommitRepoAction ¶
func CommitRepoAction(opts CommitRepoActionOptions) error
CommitRepoAction adds new commit action to the repository, and prepare corresponding webhooks.
func ComposeHTTPSCloneURL ¶
ComposeHTTPSCloneURL returns HTTPS clone URL based on given owner and repository name.
func CountLoginSources ¶
func CountLoginSources() int64
CountLoginSources returns number of login sources.
func CountOrganizations ¶
func CountOrganizations() int64
CountOrganizations returns number of organizations.
func CountRepoClosedMilestones ¶
CountRepoClosedMilestones returns number of closed milestones in given repository.
func CountRepositories ¶
CountRepositories returns number of repositories. Argument private only takes effect when it is false, set it true to count all repositories.
func CountUserRepositories ¶
CountUserRepositories returns number of repositories user owns. Argument private only takes effect when it is false, set it true to count all repositories.
func CreateHookTask ¶
CreateHookTask creates a new hook task, it handles conversion from Payload to PayloadContent.
func CreateLoginSource ¶
func CreateLoginSource(source *LoginSource) error
CreateLoginSource inserts a LoginSource in the DB if not already existing with the given name.
func CreateNotice ¶
func CreateNotice(tp NoticeType, desc string) error
CreateNotice creates new system notice.
func CreateOrUpdateIssueNotifications ¶ added in v1.1.0
CreateOrUpdateIssueNotifications creates an issue notification for each watcher, or updates it if already exists
func CreateOrganization ¶
CreateOrganization creates record of a new organization.
func CreateRefComment ¶
func CreateRefComment(doer *User, repo *Repository, issue *Issue, content, commitSHA string) error
CreateRefComment creates a commit reference comment to issue.
func CreateRelease ¶
func CreateRelease(gitRepo *git.Repository, rel *Release, attachmentUUIDs []string) error
CreateRelease creates a new release of repository.
func CreateRepositoryNotice ¶
CreateRepositoryNotice creates new system notice with type NoticeRepository.
func DeleteAccessTokenByID ¶
DeleteAccessTokenByID deletes access token by given ID.
func DeleteAttachment ¶
func DeleteAttachment(a *Attachment, remove bool) error
DeleteAttachment deletes the given attachment and optionally the associated file.
func DeleteAttachments ¶
func DeleteAttachments(attachments []*Attachment, remove bool) (int, error)
DeleteAttachments deletes the given attachments and optionally the associated files.
func DeleteAttachmentsByComment ¶
DeleteAttachmentsByComment deletes all attachments associated with the given comment.
func DeleteAttachmentsByIssue ¶
DeleteAttachmentsByIssue deletes all attachments associated with the given issue.
func DeleteComment ¶ added in v1.1.0
DeleteComment deletes the comment
func DeleteDeployKey ¶
DeleteDeployKey deletes deploy key from its repository authorized_keys file if needed.
func DeleteEmailAddress ¶
func DeleteEmailAddress(email *EmailAddress) (err error)
DeleteEmailAddress deletes an email address of given user.
func DeleteEmailAddresses ¶
func DeleteEmailAddresses(emails []*EmailAddress) (err error)
DeleteEmailAddresses deletes multiple email addresses
func DeleteInactivateUsers ¶
func DeleteInactivateUsers() (err error)
DeleteInactivateUsers deletes all inactivate users and email addresses.
func DeleteIssueLabel ¶
DeleteIssueLabel deletes issue-label relation.
func DeleteLabel ¶
DeleteLabel delete a label of given repository.
func DeleteMilestoneByRepoID ¶
DeleteMilestoneByRepoID deletes a milestone from a repository.
func DeleteMirrorByRepoID ¶
DeleteMirrorByRepoID deletes a mirror by repoID
func DeleteMissingRepositories ¶
func DeleteMissingRepositories() error
DeleteMissingRepositories deletes all repository records that lost Git files.
func DeleteNotice ¶
DeleteNotice deletes a system notice by given ID.
func DeleteNotices ¶
DeleteNotices deletes all notices with ID from start to end (inclusive).
func DeleteNoticesByIDs ¶
DeleteNoticesByIDs deletes notices by given IDs.
func DeleteOldRepositoryArchives ¶ added in v1.1.0
func DeleteOldRepositoryArchives()
DeleteOldRepositoryArchives deletes old repository archives.
func DeleteOrganization ¶
DeleteOrganization completely and permanently deletes everything of organization.
func DeletePublicKey ¶
DeletePublicKey deletes SSH key information both in database and authorized_keys file.
func DeleteReleaseByID ¶
DeleteReleaseByID deletes a release and corresponding Git tag by given ID.
func DeleteRepository ¶
DeleteRepository deletes a repository for a user or organization.
func DeleteRepositoryArchives ¶
func DeleteRepositoryArchives() error
DeleteRepositoryArchives deletes all repositories' archives.
func DeleteSource ¶
func DeleteSource(source *LoginSource) error
DeleteSource deletes a LoginSource record in DB.
func DeleteTeam ¶
DeleteTeam deletes given team. It's caller's responsibility to assign organization ID.
func DeleteTwoFactorByID ¶ added in v1.1.0
DeleteTwoFactorByID deletes two-factor authentication token by given ID.
func DeleteUploadByUUID ¶
DeleteUploadByUUID deletes a upload by UUID
func DeleteUploads ¶
DeleteUploads deletes multiple uploads
func DeleteUser ¶
DeleteUser completely and permanently deletes everything of a user, but issues/comments/pulls will be kept and shown as someone has been deleted.
func DeleteWebhookByOrgID ¶
DeleteWebhookByOrgID deletes webhook of organization by given ID.
func DeleteWebhookByRepoID ¶
DeleteWebhookByRepoID deletes webhook of repository by given ID.
func DeliverHooks ¶
func DeliverHooks()
DeliverHooks checks and delivers undelivered hooks. TODO: shoot more hooks at same time.
func DumpDatabase ¶
DumpDatabase dumps all data from database according the special database SQL syntax to file system.
func FollowUser ¶
FollowUser marks someone be another's follower.
func GetActiveOAuth2Providers ¶ added in v1.1.0
func GetActiveOAuth2Providers() (map[string]OAuth2Provider, error)
GetActiveOAuth2Providers returns the map of configured active OAuth2 providers key is used as technical name (like in the callbackURL) values to display
func GetExternalLogin ¶ added in v1.1.0
func GetExternalLogin(externalLoginUser *ExternalLoginUser) (bool, error)
GetExternalLogin checks if a externalID in loginSourceID scope already exists
func GetLabelTemplateFile ¶
GetLabelTemplateFile loads the label template file by given name, then parses and returns a list of name-color pairs.
func GetNotificationCount ¶ added in v1.1.0
func GetNotificationCount(user *User, status NotificationStatus) (int64, error)
GetNotificationCount returns the notification count for user
func GetPrivateRepositoryCount ¶ added in v1.1.0
GetPrivateRepositoryCount returns the total number of private repositories of user.
func GetPublicRepositoryCount ¶ added in v1.1.0
GetPublicRepositoryCount returns the total number of public repositories of user.
func GetRawDiff ¶
func GetRawDiff(repoPath, commitID string, diffType RawDiffType, writer io.Writer) error
GetRawDiff dumps diff results of repository in given commit ID to io.Writer. TODO: move this function to gogits/git-module
func GetReleaseAttachments ¶ added in v1.1.0
GetReleaseAttachments retrieves the attachments for releases
func GetRepoIssueStats ¶
func GetRepoIssueStats(repoID, uid int64, filterMode int, isPull bool) (numOpen int64, numClosed int64)
GetRepoIssueStats returns number of open and closed repository issues by given filter mode.
func GetRepositoryCount ¶
GetRepositoryCount returns the total number of repositories of user.
func GetUserEmailsByNames ¶
GetUserEmailsByNames returns a list of e-mails corresponds to names.
func GetUserIDsByNames ¶
GetUserIDsByNames returns a slice of ids corresponds to names.
func GitGcRepos ¶
func GitGcRepos() error
GitGcRepos calls 'git gc' to remove unnecessary files and optimize the local repository
func HandleCloneUserCredentials ¶
HandleCloneUserCredentials replaces user credentials from HTTP/HTTPS URL with placeholder <credentials>. It will fail for any other forms of clone addresses.
func HasAccess ¶
func HasAccess(user *User, repo *Repository, testMode AccessMode) (bool, error)
HasAccess returns true if someone has the request access level. User can be nil!
func HasDeployKey ¶
HasDeployKey returns true if public key is a deploy key of given repository.
func HasIssueLabel ¶
HasIssueLabel returns true if issue has been labeled.
func HasTeamRepo ¶
HasTeamRepo returns true if given repository belongs to team.
func InitIssueIndexer ¶ added in v1.1.0
func InitIssueIndexer()
InitIssueIndexer initialize issue indexer
func InitMailRender ¶
InitMailRender initializes the macaron mail renderer
func InitOAuth2 ¶ added in v1.1.0
func InitOAuth2()
InitOAuth2 initialize the OAuth2 lib and register all active OAuth2 providers in the library
func InitSyncMirrors ¶
func InitSyncMirrors()
InitSyncMirrors initializes a go routine to sync the mirrors
func InitTestPullRequests ¶
func InitTestPullRequests()
InitTestPullRequests runs the task to test all the checking status pull requests
func IsEmailUsed ¶
IsEmailUsed returns true if the email has been used.
func IsErrAccessTokenEmpty ¶
IsErrAccessTokenEmpty checks if an error is a ErrAccessTokenEmpty.
func IsErrAccessTokenNotExist ¶
IsErrAccessTokenNotExist checks if an error is a ErrAccessTokenNotExist.
func IsErrAttachmentNotExist ¶
IsErrAttachmentNotExist checks if an error is a ErrAttachmentNotExist.
func IsErrBranchNotExist ¶
IsErrBranchNotExist checks if an error is a ErrBranchNotExist.
func IsErrCommentNotExist ¶
IsErrCommentNotExist checks if an error is a ErrCommentNotExist.
func IsErrDeployKeyAlreadyExist ¶
IsErrDeployKeyAlreadyExist checks if an error is a ErrDeployKeyAlreadyExist.
func IsErrDeployKeyNameAlreadyUsed ¶
IsErrDeployKeyNameAlreadyUsed checks if an error is a ErrDeployKeyNameAlreadyUsed.
func IsErrDeployKeyNotExist ¶
IsErrDeployKeyNotExist checks if an error is a ErrDeployKeyNotExist.
func IsErrEmailAlreadyUsed ¶
IsErrEmailAlreadyUsed checks if an error is a ErrEmailAlreadyUsed.
func IsErrExternalLoginUserAlreadyExist ¶ added in v1.1.0
IsErrExternalLoginUserAlreadyExist checks if an error is a ExternalLoginUserAlreadyExist.
func IsErrExternalLoginUserNotExist ¶ added in v1.1.0
IsErrExternalLoginUserNotExist checks if an error is a ExternalLoginUserNotExist.
func IsErrInvalidCloneAddr ¶
IsErrInvalidCloneAddr checks if an error is a ErrInvalidCloneAddr.
func IsErrInvalidTagName ¶
IsErrInvalidTagName checks if an error is a ErrInvalidTagName.
func IsErrIssueNotExist ¶
IsErrIssueNotExist checks if an error is a ErrIssueNotExist.
func IsErrKeyAccessDenied ¶
IsErrKeyAccessDenied checks if an error is a ErrKeyAccessDenied.
func IsErrKeyAlreadyExist ¶
IsErrKeyAlreadyExist checks if an error is a ErrKeyAlreadyExist.
func IsErrKeyNameAlreadyUsed ¶
IsErrKeyNameAlreadyUsed checks if an error is a ErrKeyNameAlreadyUsed.
func IsErrKeyNotExist ¶
IsErrKeyNotExist checks if an error is a ErrKeyNotExist.
func IsErrKeyUnableVerify ¶
IsErrKeyUnableVerify checks if an error is a ErrKeyUnableVerify.
func IsErrLabelNotExist ¶
IsErrLabelNotExist checks if an error is a ErrLabelNotExist.
func IsErrLastOrgOwner ¶
IsErrLastOrgOwner checks if an error is a ErrLastOrgOwner.
func IsErrLoginSourceAlreadyExist ¶
IsErrLoginSourceAlreadyExist checks if an error is a ErrLoginSourceAlreadyExist.
func IsErrLoginSourceInUse ¶
IsErrLoginSourceInUse checks if an error is a ErrLoginSourceInUse.
func IsErrLoginSourceNotExist ¶
IsErrLoginSourceNotExist checks if an error is a ErrLoginSourceNotExist.
func IsErrMilestoneNotExist ¶
IsErrMilestoneNotExist checks if an error is a ErrMilestoneNotExist.
func IsErrNamePatternNotAllowed ¶
IsErrNamePatternNotAllowed checks if an error is an ErrNamePatternNotAllowed.
func IsErrNameReserved ¶
IsErrNameReserved checks if an error is a ErrNameReserved.
func IsErrPullRequestAlreadyExists ¶ added in v1.0.0
IsErrPullRequestAlreadyExists checks if an error is a ErrPullRequestAlreadyExists.
func IsErrPullRequestNotExist ¶
IsErrPullRequestNotExist checks if an error is a ErrPullRequestNotExist.
func IsErrReachLimitOfRepo ¶
IsErrReachLimitOfRepo checks if an error is a ErrReachLimitOfRepo.
func IsErrReleaseAlreadyExist ¶
IsErrReleaseAlreadyExist checks if an error is a ErrReleaseAlreadyExist.
func IsErrReleaseNotExist ¶
IsErrReleaseNotExist checks if an error is a ErrReleaseNotExist.
func IsErrRepoAlreadyExist ¶
IsErrRepoAlreadyExist checks if an error is a ErrRepoAlreadyExist.
func IsErrRepoFileAlreadyExist ¶
IsErrRepoFileAlreadyExist checks if an error is a ErrRepoFileAlreadyExist.
func IsErrRepoNotExist ¶
IsErrRepoNotExist checks if an error is a ErrRepoNotExist.
func IsErrRepoRedirectNotExist ¶ added in v1.1.0
IsErrRepoRedirectNotExist check if an error is an ErrRepoRedirectNotExist
func IsErrTeamAlreadyExist ¶
IsErrTeamAlreadyExist checks if an error is a ErrTeamAlreadyExist.
func IsErrTwoFactorNotEnrolled ¶ added in v1.1.0
IsErrTwoFactorNotEnrolled checks if an error is a ErrTwoFactorNotEnrolled.
func IsErrUpdateTaskNotExist ¶
IsErrUpdateTaskNotExist checks if an error is a ErrUpdateTaskNotExist.
func IsErrUploadNotExist ¶
IsErrUploadNotExist checks if an error is a ErrUploadNotExist.
func IsErrUserAlreadyExist ¶
IsErrUserAlreadyExist checks if an error is a ErrUserAlreadyExists.
func IsErrUserHasOrgs ¶
IsErrUserHasOrgs checks if an error is a ErrUserHasOrgs.
func IsErrUserNotAllowedCreateOrg ¶ added in v1.1.0
IsErrUserNotAllowedCreateOrg checks if an error is an ErrUserNotAllowedCreateOrg.
func IsErrUserNotExist ¶
IsErrUserNotExist checks if an error is a ErrUserNotExist.
func IsErrUserOwnRepos ¶
IsErrUserOwnRepos checks if an error is a ErrUserOwnRepos.
func IsErrWebhookNotExist ¶
IsErrWebhookNotExist checks if an error is a ErrWebhookNotExist.
func IsErrWikiAlreadyExist ¶
IsErrWikiAlreadyExist checks if an error is a ErrWikiAlreadyExist.
func IsFollowing ¶
IsFollowing returns true if user is following followID.
func IsOrganizationMember ¶
IsOrganizationMember returns true if given user is member of organization.
func IsOrganizationOwner ¶
IsOrganizationOwner returns true if given user is in the owner team.
func IsPublicMembership ¶
IsPublicMembership returns true if given user public his/her membership.
func IsReleaseExist ¶
IsReleaseExist returns true if release with given tag name already exists.
func IsRepositoryExist ¶
IsRepositoryExist returns true if the repository with given name under user has already existed.
func IsTeamMember ¶
IsTeamMember returns true if given user is a member of team.
func IsUsableRepoName ¶
IsUsableRepoName returns true when repository is usable
func IsUsableTeamName ¶ added in v1.0.0
IsUsableTeamName tests if a name could be as team name
func IsUsableUsername ¶
IsUsableUsername returns an error when a username is reserved
func IsUserExist ¶
IsUserExist checks if given user name exist, the user name should be noncased unique. If uid is presented, then check will rule out that one, it is used when update a user name in settings page.
func IsValidHookContentType ¶
IsValidHookContentType returns true if given name is a valid hook content type.
func IsValidHookTaskType ¶
IsValidHookTaskType returns true if given name is a valid hook task type.
func IsWatching ¶
IsWatching checks if user has watched given repository.
func LinkAccountToUser ¶ added in v1.1.0
LinkAccountToUser link the gothUser to the user
func LookupRepoRedirect ¶ added in v1.1.0
LookupRepoRedirect look up if a repository has a redirect name
func MakeEmailPrimary ¶
func MakeEmailPrimary(email *EmailAddress) error
MakeEmailPrimary sets primary email address of given user.
func MergePullRequestAction ¶
func MergePullRequestAction(actUser *User, repo *Repository, pull *Issue) error
MergePullRequestAction adds new action for merging pull request.
func MilestoneStats ¶
MilestoneStats returns number of open and closed milestones of given repository.
func NewAccessToken ¶
func NewAccessToken(t *AccessToken) error
NewAccessToken creates new access token.
func NewIssue ¶
func NewIssue(repo *Repository, issue *Issue, labelIDs []int64, uuids []string) (err error)
NewIssue creates new issue with labels for repository.
func NewIssueLabel ¶
NewIssueLabel creates a new issue-label relation.
func NewIssueLabels ¶
NewIssueLabels creates a list of issue-label relations.
func NewMilestone ¶
NewMilestone creates new milestone of repository.
func NewPullRequest ¶
func NewPullRequest(repo *Repository, pull *Issue, labelIDs []int64, uuids []string, pr *PullRequest, patch []byte) (err error)
NewPullRequest creates new pull request with labels for repository.
func NewRepoAction ¶
func NewRepoAction(u *User, repo *Repository) (err error)
NewRepoAction adds new action for creating repository.
func NewRepoRedirect ¶ added in v1.1.0
NewRepoRedirect create a new repo redirect
func NewTeam ¶
NewTeam creates a record of new team. It's caller's responsibility to assign organization ID.
func NewTestEngine ¶
NewTestEngine sets a new test xorm.Engine
func NewTwoFactor ¶ added in v1.1.0
NewTwoFactor creates a new two-factor authentication token.
func NotifyWatchers ¶
NotifyWatchers creates batch of actions for every watcher.
func PrepareWebhooks ¶
func PrepareWebhooks(repo *Repository, event HookEventType, p api.Payloader) error
PrepareWebhooks adds new webhooks to task queue for given payload.
func PushUpdate ¶
func PushUpdate(opts PushUpdateOptions) (err error)
PushUpdate must be called for any push actions in order to generates necessary push action history feeds.
func ReinitMissingRepositories ¶
func ReinitMissingRepositories() error
ReinitMissingRepositories reinitializes all repository records that lost Git files.
func RemoveAccountLink ¶ added in v1.1.0
RemoveAccountLink will remove all external login sources for the given user
func RemoveAllWithNotice ¶
func RemoveAllWithNotice(title, path string)
RemoveAllWithNotice removes all directories in given path and creates a system notice when error occurs.
func RemoveLFSMetaObjectByOid ¶ added in v1.1.0
RemoveLFSMetaObjectByOid removes a LFSMetaObject entry from database by its OID. It may return ErrLFSObjectNotExist or a database error.
func RemoveOrgUser ¶
RemoveOrgUser removes user from given organization.
func RemoveTeamMember ¶
RemoveTeamMember removes member from given team of given organization.
func RenameRepoAction ¶
func RenameRepoAction(actUser *User, oldRepoName string, repo *Repository) error
RenameRepoAction adds new action for renaming a repository.
func RewriteAllPublicKeys ¶
func RewriteAllPublicKeys() error
RewriteAllPublicKeys removes any authorized key and rewrite all keys from database again. Note: x.Iterate does not get latest data after insert/delete, so we have to call this function outside any session scope independently.
func SMTPAuth ¶
func SMTPAuth(a smtp.Auth, cfg *SMTPConfig) error
SMTPAuth performs an SMTP authentication.
func SSHKeyGenParsePublicKey ¶
SSHKeyGenParsePublicKey extracts key type and length using ssh-keygen.
func SSHNativeParsePublicKey ¶
SSHNativeParsePublicKey extracts the key type and length using the golang SSH library. NOTE: ed25519 is not supported.
func SearchIssuesByKeyword ¶ added in v1.1.0
SearchIssuesByKeyword searches for issues by given conditions. Returns the matching issue IDs
func SendActivateAccountMail ¶
func SendActivateAccountMail(c *macaron.Context, u *User)
SendActivateAccountMail sends an activation mail to the user
func SendActivateEmailMail ¶
func SendActivateEmailMail(c *macaron.Context, u *User, email *EmailAddress)
SendActivateEmailMail sends confirmation email.
func SendCollaboratorMail ¶
func SendCollaboratorMail(u, doer *User, repo *Repository)
SendCollaboratorMail sends mail notification to new collaborator.
func SendIssueCommentMail ¶
SendIssueCommentMail composes and sends issue comment emails to target receivers.
func SendIssueMentionMail ¶
SendIssueMentionMail composes and sends issue mention emails to target receivers.
func SendRegisterNotifyMail ¶
func SendRegisterNotifyMail(c *macaron.Context, u *User)
SendRegisterNotifyMail triggers a notify e-mail by admin created a account.
func SendResetPasswordMail ¶
func SendResetPasswordMail(c *macaron.Context, u *User)
SendResetPasswordMail sends a password reset mail to the user
func SendUserMail ¶
SendUserMail sends a mail to the user
func SetNotificationStatus ¶ added in v1.1.0
func SetNotificationStatus(notificationID int64, user *User, status NotificationStatus) error
SetNotificationStatus change the notification status
func SlackLinkFormatter ¶
SlackLinkFormatter creates a link compatible with slack
func SlackShortTextFormatter ¶
SlackShortTextFormatter replaces &, <, > with HTML characters
func SlackTextFormatter ¶
SlackTextFormatter replaces &, <, > with HTML characters see: https://api.slack.com/docs/formatting
func SortReleases ¶
func SortReleases(rels []*Release)
SortReleases sorts releases by number of commits and created time.
func SyncMirrors ¶
func SyncMirrors()
SyncMirrors checks and syncs mirrors. TODO: sync more mirrors at same time.
func SyncRepositoryHooks ¶ added in v1.1.0
func SyncRepositoryHooks() error
SyncRepositoryHooks rewrites all repositories' pre-receive, update and post-receive hooks to make sure the binary and custom conf path are up-to-date.
func TestPullRequests ¶
func TestPullRequests()
TestPullRequests checks and tests untested patches of pull requests. TODO: test more pull requests at same time.
func ToWikiPageName ¶
ToWikiPageName formats a URL back to corresponding wiki page name, and removes leading characters './' to prevent changing files that are not belong to wiki repository.
func ToWikiPageURL ¶
ToWikiPageURL formats a string to corresponding wiki URL name.
func TransferOwnership ¶
func TransferOwnership(doer *User, newOwnerName string, repo *Repository) error
TransferOwnership transfers all corresponding setting from old user to new one.
func TransferRepoAction ¶
func TransferRepoAction(doer, oldOwner *User, repo *Repository) error
TransferRepoAction adds new action for transferring repository, the Owner field of repository is assumed to be new owner.
func UnfollowUser ¶
UnfollowUser unmarks someone as another's follower.
func UpdateAccessToken ¶
func UpdateAccessToken(t *AccessToken) error
UpdateAccessToken updates information of access token.
func UpdateComment ¶
UpdateComment updates information of comment.
func UpdateDeployKey ¶
UpdateDeployKey updates deploy key information.
func UpdateHookTask ¶
UpdateHookTask updates information of hook task.
func UpdateIssue ¶
UpdateIssue updates all fields of given issue.
func UpdateIssueCols ¶
UpdateIssueCols only updates values of specific columns for given issue.
func UpdateIssueIndexer ¶ added in v1.1.0
func UpdateIssueIndexer(issue *Issue)
UpdateIssueIndexer add/update an issue to the issue indexer
func UpdateIssueMentions ¶
UpdateIssueMentions extracts mentioned people from content and updates issue-user relations for them.
func UpdateIssueUserByAssignee ¶
UpdateIssueUserByAssignee updates issue-user relation for assignee.
func UpdateIssueUserByRead ¶
UpdateIssueUserByRead updates issue-user relation for reading.
func UpdateIssueUsersByMentions ¶
UpdateIssueUsersByMentions updates issue-user pairs by mentioning.
func UpdateIssuesCommit ¶
func UpdateIssuesCommit(doer *User, repo *Repository, commits []*PushCommit) error
UpdateIssuesCommit checks if issues are manipulated by commit message.
func UpdateLocalCopyBranch ¶
UpdateLocalCopyBranch pulls latest changes of given branch from repoPath to localPath. It creates a new clone if local copy does not exist. This function checks out target branch by default, it is safe to assume subsequent operations are operating against target branch when caller has confidence for no race condition.
func UpdateMilestone ¶
UpdateMilestone updates information of given milestone.
func UpdateProtectedBranch ¶ added in v1.1.0
func UpdateProtectedBranch(protectedBranch *ProtectedBranch) error
UpdateProtectedBranch update queue
func UpdatePublicKey ¶
UpdatePublicKey updates given public key.
func UpdateRelease ¶
func UpdateRelease(gitRepo *git.Repository, rel *Release, attachmentUUIDs []string) (err error)
UpdateRelease updates information of a release.
func UpdateRepository ¶
func UpdateRepository(repo *Repository, visibilityChanged bool) (err error)
UpdateRepository updates a repository
func UpdateRepositoryUnits ¶ added in v1.1.0
func UpdateRepositoryUnits(repo *Repository, units []RepoUnit) (err error)
UpdateRepositoryUnits updates a repository's units
func UpdateSource ¶
func UpdateSource(source *LoginSource) error
UpdateSource updates a LoginSource record in DB.
func UpdateTeam ¶
UpdateTeam updates information of team.
func UpdateTwoFactor ¶ added in v1.1.0
UpdateTwoFactor updates a two-factor authentication token.
func UpdateUserSetting ¶ added in v1.1.0
UpdateUserSetting updates user's settings.
func UpdateWebhook ¶
UpdateWebhook updates information of webhook.
func UploadLocalPath ¶
UploadLocalPath returns where uploads is stored in local file system based on given UUID.
func ValidateCommitsWithEmails ¶
ValidateCommitsWithEmails checks if authors' e-mails of commits are corresponding to users.
Types ¶
type Access ¶
type Access struct { ID int64 `xorm:"pk autoincr"` UserID int64 `xorm:"UNIQUE(s)"` RepoID int64 `xorm:"UNIQUE(s)"` Mode AccessMode }
Access represents the highest access level of a user to the repository. The only access type that is not in this table is the real owner of a repository. In case of an organization repository, the members of the owners team are in this table.
type AccessMode ¶
type AccessMode int
AccessMode specifies the users access mode
const ( // AccessModeNone no access AccessModeNone AccessMode = iota // 0 // AccessModeRead read access AccessModeRead // 1 // AccessModeWrite write access AccessModeWrite // 2 // AccessModeAdmin admin access AccessModeAdmin // 3 // AccessModeOwner owner access AccessModeOwner // 4 )
func AccessLevel ¶
func AccessLevel(user *User, repo *Repository) (AccessMode, error)
AccessLevel returns the Access a user has to a repository. Will return NoneAccess if the user does not have access. User can be nil!
func ParseAccessMode ¶
func ParseAccessMode(permission string) AccessMode
ParseAccessMode returns corresponding access mode to given permission string.
func (AccessMode) String ¶
func (mode AccessMode) String() string
type AccessToken ¶
type AccessToken struct { ID int64 `xorm:"pk autoincr"` UID int64 `xorm:"INDEX"` Name string Sha1 string `xorm:"UNIQUE VARCHAR(40)"` Created time.Time `xorm:"-"` CreatedUnix int64 `xorm:"INDEX"` Updated time.Time `xorm:"-"` // Note: Updated must below Created for AfterSet. UpdatedUnix int64 `xorm:"INDEX"` HasRecentActivity bool `xorm:"-"` HasUsed bool `xorm:"-"` }
AccessToken represents a personal access token.
func GetAccessTokenBySHA ¶
func GetAccessTokenBySHA(sha string) (*AccessToken, error)
GetAccessTokenBySHA returns access token by given sha1.
func ListAccessTokens ¶
func ListAccessTokens(uid int64) ([]*AccessToken, error)
ListAccessTokens returns a list of access tokens belongs to given user.
func (*AccessToken) AfterSet ¶
func (t *AccessToken) AfterSet(colName string, _ xorm.Cell)
AfterSet is invoked from XORM after setting the value of a field of this object.
func (*AccessToken) BeforeInsert ¶
func (t *AccessToken) BeforeInsert()
BeforeInsert will be invoked by XORM before inserting a record representing this object.
func (*AccessToken) BeforeUpdate ¶
func (t *AccessToken) BeforeUpdate()
BeforeUpdate is invoked from XORM before updating this object.
type AccessibleReposEnvironment ¶ added in v1.1.0
type AccessibleReposEnvironment interface { CountRepos() (int64, error) RepoIDs(page, pageSize int) ([]int64, error) Repos(page, pageSize int) ([]*Repository, error) MirrorRepos() ([]*Repository, error) }
AccessibleReposEnvironment operations involving the repositories that are accessible to a particular user
type Action ¶
type Action struct { ID int64 `xorm:"pk autoincr"` UserID int64 `xorm:"INDEX"` // Receiver user id. OpType ActionType ActUserID int64 `xorm:"INDEX"` // Action user id. ActUserName string // Action user name. ActAvatar string `xorm:"-"` RepoID int64 `xorm:"INDEX"` RepoUserName string RepoName string RefName string IsPrivate bool `xorm:"INDEX NOT NULL DEFAULT false"` Content string `xorm:"TEXT"` Created time.Time `xorm:"-"` CreatedUnix int64 `xorm:"INDEX"` }
Action represents user operation type and other information to repository. It implemented interface base.Actioner so that can be used in template render.
func GetFeeds ¶
GetFeeds returns action list of given user in given context. actorID is the user who's requesting, ctxUserID is the user/org that is requested. actorID can be -1 when isProfile is true or to skip the permission check.
func (*Action) BeforeInsert ¶
func (a *Action) BeforeInsert()
BeforeInsert will be invoked by XORM before inserting a record representing this object.
func (*Action) GetActUserName ¶
GetActUserName gets the action's user name.
func (*Action) GetContent ¶
GetContent returns the action's content.
func (*Action) GetIssueContent ¶
GetIssueContent returns the content of first issue associated with this action.
func (*Action) GetIssueInfos ¶
GetIssueInfos returns a list of issues associated with the action.
func (*Action) GetIssueTitle ¶
GetIssueTitle returns the title of first issue associated with the action.
func (*Action) GetOpType ¶
GetOpType gets the ActionType of this action. TODO: change return type to ActionType ?
func (*Action) GetRepoLink ¶
GetRepoLink returns relative link to action repository.
func (*Action) GetRepoName ¶
GetRepoName returns the name of the action repository.
func (*Action) GetRepoPath ¶
GetRepoPath returns the virtual path to the action repository.
func (*Action) GetRepoUserName ¶
GetRepoUserName returns the name of the action repository owner.
func (*Action) ShortActUserName ¶
ShortActUserName gets the action's user name trimmed to max 20 chars.
func (*Action) ShortRepoName ¶
ShortRepoName returns the name of the action repository trimmed to max 33 chars.
func (*Action) ShortRepoPath ¶
ShortRepoPath returns the virtual path to the action repository trimmed to max 20 + 1 + 33 chars.
func (*Action) ShortRepoUserName ¶
ShortRepoUserName returns the name of the action repository owner trimmed to max 20 chars.
type ActionType ¶
type ActionType int
ActionType represents the type of an action.
const ( ActionCreateRepo ActionType = iota + 1 // 1 ActionRenameRepo // 2 ActionStarRepo // 3 ActionWatchRepo // 4 ActionCommitRepo // 5 ActionCreateIssue // 6 ActionCreatePullRequest // 7 ActionTransferRepo // 8 ActionPushTag // 9 ActionCommentIssue // 10 ActionMergePullRequest // 11 ActionCloseIssue // 12 ActionReopenIssue // 13 ActionClosePullRequest // 14 ActionReopenPullRequest // 15 )
Possible action types.
type Attachment ¶
type Attachment struct { ID int64 `xorm:"pk autoincr"` UUID string `xorm:"uuid UNIQUE"` IssueID int64 `xorm:"INDEX"` CommentID int64 ReleaseID int64 `xorm:"INDEX"` Name string Created time.Time `xorm:"-"` CreatedUnix int64 }
Attachment represent a attachment of issue/comment/release.
func GetAttachmentByUUID ¶
func GetAttachmentByUUID(uuid string) (*Attachment, error)
GetAttachmentByUUID returns attachment by given UUID.
func GetAttachmentsByCommentID ¶
func GetAttachmentsByCommentID(commentID int64) ([]*Attachment, error)
GetAttachmentsByCommentID returns all attachments if comment by given ID.
func GetAttachmentsByIssueID ¶
func GetAttachmentsByIssueID(issueID int64) ([]*Attachment, error)
GetAttachmentsByIssueID returns all attachments of an issue.
func NewAttachment ¶
NewAttachment creates a new attachment object.
func (*Attachment) AfterSet ¶
func (a *Attachment) AfterSet(colName string, _ xorm.Cell)
AfterSet is invoked from XORM after setting the value of a field of this object.
func (*Attachment) BeforeInsert ¶
func (a *Attachment) BeforeInsert()
BeforeInsert is invoked from XORM before inserting an object of this type.
func (*Attachment) LocalPath ¶
func (a *Attachment) LocalPath() string
LocalPath returns where attachment is stored in local file system.
type Branch ¶
Branch holds the branch information
func GetBranchesByPath ¶
GetBranchesByPath returns a branch by it's path
type Collaboration ¶
type Collaboration struct { ID int64 `xorm:"pk autoincr"` RepoID int64 `xorm:"UNIQUE(s) INDEX NOT NULL"` UserID int64 `xorm:"UNIQUE(s) INDEX NOT NULL"` Mode AccessMode `xorm:"DEFAULT 2 NOT NULL"` }
Collaboration represent the relation between an individual and a repository.
func (*Collaboration) ModeI18nKey ¶
func (c *Collaboration) ModeI18nKey() string
ModeI18nKey returns the collaboration mode I18n Key
type Collaborator ¶
type Collaborator struct { *User Collaboration *Collaboration }
Collaborator represents a user with collaboration details.
type Comment ¶
type Comment struct { ID int64 `xorm:"pk autoincr"` Type CommentType PosterID int64 `xorm:"INDEX"` Poster *User `xorm:"-"` IssueID int64 `xorm:"INDEX"` LabelID int64 Label *Label `xorm:"-"` OldMilestoneID int64 MilestoneID int64 OldMilestone *Milestone `xorm:"-"` Milestone *Milestone `xorm:"-"` OldAssigneeID int64 AssigneeID int64 Assignee *User `xorm:"-"` OldAssignee *User `xorm:"-"` OldTitle string NewTitle string CommitID int64 Line int64 Content string `xorm:"TEXT"` RenderedContent string `xorm:"-"` Created time.Time `xorm:"-"` CreatedUnix int64 `xorm:"INDEX"` Updated time.Time `xorm:"-"` UpdatedUnix int64 `xorm:"INDEX"` // Reference issue in commit message CommitSHA string `xorm:"VARCHAR(40)"` Attachments []*Attachment `xorm:"-"` // For view issue page. ShowTag CommentTag `xorm:"-"` }
Comment represents a comment in commit and issue page.
func CreateComment ¶
func CreateComment(opts *CreateCommentOptions) (comment *Comment, err error)
CreateComment creates comment of issue or commit.
func CreateIssueComment ¶
func CreateIssueComment(doer *User, repo *Repository, issue *Issue, content string, attachments []string) (*Comment, error)
CreateIssueComment creates a plain issue comment.
func GetCommentByID ¶
GetCommentByID returns the comment by given ID.
func GetCommentsByIssueID ¶
GetCommentsByIssueID returns all comments of an issue.
func GetCommentsByIssueIDSince ¶
GetCommentsByIssueIDSince returns a list of comments of an issue since a given time point.
func GetCommentsByRepoIDSince ¶ added in v1.0.0
GetCommentsByRepoIDSince returns a list of comments for all issues in a repo since a given time point.
func (*Comment) AfterDelete ¶
func (c *Comment) AfterDelete()
AfterDelete is invoked from XORM after the object is deleted.
func (*Comment) AfterSet ¶
AfterSet is invoked from XORM after setting the value of a field of this object.
func (*Comment) BeforeInsert ¶
func (c *Comment) BeforeInsert()
BeforeInsert will be invoked by XORM before inserting a record representing this object.
func (*Comment) BeforeUpdate ¶
func (c *Comment) BeforeUpdate()
BeforeUpdate is invoked from XORM before updating this object.
func (*Comment) LoadAssignees ¶ added in v1.1.0
LoadAssignees if comment.Type is CommentTypeAssignees, then load assignees
func (*Comment) LoadLabel ¶ added in v1.1.0
LoadLabel if comment.Type is CommentTypeLabel, then load Label
func (*Comment) LoadMilestone ¶ added in v1.1.0
LoadMilestone if comment.Type is CommentTypeMilestone, then load milestone
func (*Comment) MailParticipants ¶
func (c *Comment) MailParticipants(e Engine, opType ActionType, issue *Issue) (err error)
MailParticipants sends new comment emails to repository watchers and mentioned people.
type CommentTag ¶
type CommentTag int
CommentTag defines comment tag type
const ( CommentTagNone CommentTag = iota CommentTagPoster CommentTagWriter CommentTagOwner )
Enumerate all the comment tag types
type CommentType ¶
type CommentType int
CommentType defines whether a comment is just a simple comment, an action (like close) or a reference.
const ( // Plain comment, can be associated with a commit (CommitID > 0) and a line (LineNum > 0) CommentTypeComment CommentType = iota CommentTypeReopen CommentTypeClose // References. CommentTypeIssueRef // Reference from a commit (not part of a pull request) CommentTypeCommitRef // Reference from a comment CommentTypeCommentRef // Reference from a pull request CommentTypePullRef // Labels changed CommentTypeLabel // Milestone changed CommentTypeMilestone // Assignees changed CommentTypeAssignees // Change Title CommentTypeChangeTitle // Delete Branch CommentTypeDeleteBranch )
Enumerate all the comment types
type CommitRepoActionOptions ¶
type CommitRepoActionOptions struct { PusherName string RepoOwnerID int64 RepoName string RefFullName string OldCommitID string NewCommitID string Commits *PushCommits }
CommitRepoActionOptions represent options of a new commit action.
type CreateCommentOptions ¶
type CreateCommentOptions struct { Type CommentType Doer *User Repo *Repository Issue *Issue Label *Label OldMilestoneID int64 MilestoneID int64 OldAssigneeID int64 AssigneeID int64 OldTitle string NewTitle string CommitID int64 CommitSHA string LineNum int64 Content string Attachments []string // UUIDs of attachments }
CreateCommentOptions defines options for creating comment
type CreateRepoOptions ¶
type CreateRepoOptions struct { Name string Description string Gitignores string License string Readme string IsPrivate bool IsMirror bool AutoInit bool }
CreateRepoOptions contains the create repository options
type DeleteRepoFileOptions ¶
type DeleteRepoFileOptions struct { LastCommitID string OldBranch string NewBranch string TreePath string Message string }
DeleteRepoFileOptions holds the repository delete file options
type DeployKey ¶
type DeployKey struct { ID int64 `xorm:"pk autoincr"` KeyID int64 `xorm:"UNIQUE(s) INDEX"` RepoID int64 `xorm:"UNIQUE(s) INDEX"` Name string Fingerprint string Content string `xorm:"-"` Created time.Time `xorm:"-"` CreatedUnix int64 Updated time.Time `xorm:"-"` // Note: Updated must below Created for AfterSet. UpdatedUnix int64 HasRecentActivity bool `xorm:"-"` HasUsed bool `xorm:"-"` }
DeployKey represents deploy key information and its relation with repository.
func AddDeployKey ¶
AddDeployKey add new deploy key to database and authorized_keys file.
func GetDeployKeyByID ¶
GetDeployKeyByID returns deploy key by given ID.
func GetDeployKeyByRepo ¶
GetDeployKeyByRepo returns deploy key by given public key ID and repository ID.
func ListDeployKeys ¶
ListDeployKeys returns all deploy keys by given repository ID.
func (*DeployKey) AfterSet ¶
AfterSet is invoked from XORM after setting the value of a field of this object.
func (*DeployKey) BeforeInsert ¶
func (key *DeployKey) BeforeInsert()
BeforeInsert will be invoked by XORM before inserting a record
func (*DeployKey) BeforeUpdate ¶
func (key *DeployKey) BeforeUpdate()
BeforeUpdate is invoked from XORM before updating this object.
func (*DeployKey) GetContent ¶
GetContent gets associated public key content.
type Diff ¶
Diff represents a difference between two git trees.
func GetDiffCommit ¶
func GetDiffCommit(repoPath, commitID string, maxLines, maxLineCharacters, maxFiles int) (*Diff, error)
GetDiffCommit builds a Diff representing the given commitID.
func GetDiffRange ¶
func GetDiffRange(repoPath, beforeCommitID, afterCommitID string, maxLines, maxLineCharacters, maxFiles int) (*Diff, error)
GetDiffRange builds a Diff between two commits of a repository. passing the empty string as beforeCommitID returns a diff from the parent commit.
func ParsePatch ¶
ParsePatch builds a Diff object from a io.Reader and some parameters. TODO: move this function to gogits/git-module
type DiffFile ¶
type DiffFile struct { Name string OldName string Index int Addition, Deletion int Type DiffFileType IsCreated bool IsDeleted bool IsBin bool IsLFSFile bool IsRenamed bool IsSubmodule bool Sections []*DiffSection IsIncomplete bool }
DiffFile represents a file diff.
func (*DiffFile) GetHighlightClass ¶
GetHighlightClass returns highlight class for a filename.
type DiffFileType ¶
type DiffFileType uint8
DiffFileType represents the type of a DiffFile.
const ( DiffFileAdd DiffFileType = iota + 1 DiffFileChange DiffFileDel DiffFileRename )
DiffFileType possible values.
type DiffLine ¶
type DiffLine struct { LeftIdx int RightIdx int Type DiffLineType Content string }
DiffLine represents a line difference in a DiffSection.
type DiffLineType ¶
type DiffLineType uint8
DiffLineType represents the type of a DiffLine.
const ( DiffLinePlain DiffLineType = iota + 1 DiffLineAdd DiffLineDel DiffLineSection )
DiffLineType possible values.
type DiffSection ¶
DiffSection represents a section of a DiffFile.
func (*DiffSection) GetComputedInlineDiffFor ¶
func (diffSection *DiffSection) GetComputedInlineDiffFor(diffLine *DiffLine) template.HTML
GetComputedInlineDiffFor computes inline diff for the given line.
func (*DiffSection) GetLine ¶
func (diffSection *DiffSection) GetLine(lineType DiffLineType, idx int) *DiffLine
GetLine gets a specific line by type (add or del) and file line number
type EmailAddress ¶
type EmailAddress struct { ID int64 `xorm:"pk autoincr"` UID int64 `xorm:"INDEX NOT NULL"` Email string `xorm:"UNIQUE NOT NULL"` IsActivated bool IsPrimary bool `xorm:"-"` }
EmailAddress is the list of all email addresses of a user. Can contain the primary email address, but is not obligatory.
func GetEmailAddresses ¶
func GetEmailAddresses(uid int64) ([]*EmailAddress, error)
GetEmailAddresses returns all email addresses belongs to given user.
func VerifyActiveEmailCode ¶
func VerifyActiveEmailCode(code, email string) *EmailAddress
VerifyActiveEmailCode verifies active email code when active account
func (*EmailAddress) Activate ¶
func (email *EmailAddress) Activate() error
Activate activates the email address to given user.
type Engine ¶
type Engine interface { Table(tableNameOrBean interface{}) *xorm.Session Count(interface{}) (int64, error) Decr(column string, arg ...interface{}) *xorm.Session Delete(interface{}) (int64, error) Exec(string, ...interface{}) (sql.Result, error) Find(interface{}, ...interface{}) error Get(interface{}) (bool, error) Id(interface{}) *xorm.Session In(string, ...interface{}) *xorm.Session Incr(column string, arg ...interface{}) *xorm.Session Insert(...interface{}) (int64, error) InsertOne(interface{}) (int64, error) Iterate(interface{}, xorm.IterFunc) error Join(joinOperator string, tablename interface{}, condition string, args ...interface{}) *xorm.Session SQL(interface{}, ...interface{}) *xorm.Session Where(interface{}, ...interface{}) *xorm.Session }
Engine represents a xorm engine or session.
type ErrAccessTokenEmpty ¶
type ErrAccessTokenEmpty struct { }
ErrAccessTokenEmpty represents a "AccessTokenEmpty" kind of error.
func (ErrAccessTokenEmpty) Error ¶
func (err ErrAccessTokenEmpty) Error() string
type ErrAccessTokenNotExist ¶
type ErrAccessTokenNotExist struct {
SHA string
}
ErrAccessTokenNotExist represents a "AccessTokenNotExist" kind of error.
func (ErrAccessTokenNotExist) Error ¶
func (err ErrAccessTokenNotExist) Error() string
type ErrAttachmentNotExist ¶
ErrAttachmentNotExist represents a "AttachmentNotExist" kind of error.
func (ErrAttachmentNotExist) Error ¶
func (err ErrAttachmentNotExist) Error() string
type ErrBranchNotExist ¶
type ErrBranchNotExist struct {
Name string
}
ErrBranchNotExist represents a "BranchNotExist" kind of error.
func (ErrBranchNotExist) Error ¶
func (err ErrBranchNotExist) Error() string
type ErrCommentNotExist ¶
ErrCommentNotExist represents a "CommentNotExist" kind of error.
func (ErrCommentNotExist) Error ¶
func (err ErrCommentNotExist) Error() string
type ErrDeployKeyAlreadyExist ¶
ErrDeployKeyAlreadyExist represents a "DeployKeyAlreadyExist" kind of error.
func (ErrDeployKeyAlreadyExist) Error ¶
func (err ErrDeployKeyAlreadyExist) Error() string
type ErrDeployKeyNameAlreadyUsed ¶
ErrDeployKeyNameAlreadyUsed represents a "DeployKeyNameAlreadyUsed" kind of error.
func (ErrDeployKeyNameAlreadyUsed) Error ¶
func (err ErrDeployKeyNameAlreadyUsed) Error() string
type ErrDeployKeyNotExist ¶
ErrDeployKeyNotExist represents a "DeployKeyNotExist" kind of error.
func (ErrDeployKeyNotExist) Error ¶
func (err ErrDeployKeyNotExist) Error() string
type ErrEmailAlreadyUsed ¶
type ErrEmailAlreadyUsed struct {
Email string
}
ErrEmailAlreadyUsed represents a "EmailAlreadyUsed" kind of error.
func (ErrEmailAlreadyUsed) Error ¶
func (err ErrEmailAlreadyUsed) Error() string
type ErrExternalLoginUserAlreadyExist ¶ added in v1.1.0
ErrExternalLoginUserAlreadyExist represents a "ExternalLoginUserAlreadyExist" kind of error.
func (ErrExternalLoginUserAlreadyExist) Error ¶ added in v1.1.0
func (err ErrExternalLoginUserAlreadyExist) Error() string
type ErrExternalLoginUserNotExist ¶ added in v1.1.0
ErrExternalLoginUserNotExist represents a "ExternalLoginUserNotExist" kind of error.
func (ErrExternalLoginUserNotExist) Error ¶ added in v1.1.0
func (err ErrExternalLoginUserNotExist) Error() string
type ErrInvalidCloneAddr ¶
ErrInvalidCloneAddr represents a "InvalidCloneAddr" kind of error.
func (ErrInvalidCloneAddr) Error ¶
func (err ErrInvalidCloneAddr) Error() string
type ErrInvalidTagName ¶
type ErrInvalidTagName struct {
TagName string
}
ErrInvalidTagName represents a "InvalidTagName" kind of error.
func (ErrInvalidTagName) Error ¶
func (err ErrInvalidTagName) Error() string
type ErrIssueNotExist ¶
ErrIssueNotExist represents a "IssueNotExist" kind of error.
func (ErrIssueNotExist) Error ¶
func (err ErrIssueNotExist) Error() string
type ErrKeyAccessDenied ¶
ErrKeyAccessDenied represents a "KeyAccessDenied" kind of error.
func (ErrKeyAccessDenied) Error ¶
func (err ErrKeyAccessDenied) Error() string
type ErrKeyAlreadyExist ¶
ErrKeyAlreadyExist represents a "KeyAlreadyExist" kind of error.
func (ErrKeyAlreadyExist) Error ¶
func (err ErrKeyAlreadyExist) Error() string
type ErrKeyNameAlreadyUsed ¶
ErrKeyNameAlreadyUsed represents a "KeyNameAlreadyUsed" kind of error.
func (ErrKeyNameAlreadyUsed) Error ¶
func (err ErrKeyNameAlreadyUsed) Error() string
type ErrKeyNotExist ¶
type ErrKeyNotExist struct {
ID int64
}
ErrKeyNotExist represents a "KeyNotExist" kind of error.
func (ErrKeyNotExist) Error ¶
func (err ErrKeyNotExist) Error() string
type ErrKeyUnableVerify ¶
type ErrKeyUnableVerify struct {
Result string
}
ErrKeyUnableVerify represents a "KeyUnableVerify" kind of error.
func (ErrKeyUnableVerify) Error ¶
func (err ErrKeyUnableVerify) Error() string
type ErrLabelNotExist ¶
ErrLabelNotExist represents a "LabelNotExist" kind of error.
func (ErrLabelNotExist) Error ¶
func (err ErrLabelNotExist) Error() string
type ErrLastOrgOwner ¶
type ErrLastOrgOwner struct {
UID int64
}
ErrLastOrgOwner represents a "LastOrgOwner" kind of error.
func (ErrLastOrgOwner) Error ¶
func (err ErrLastOrgOwner) Error() string
type ErrLoginSourceAlreadyExist ¶
type ErrLoginSourceAlreadyExist struct {
Name string
}
ErrLoginSourceAlreadyExist represents a "LoginSourceAlreadyExist" kind of error.
func (ErrLoginSourceAlreadyExist) Error ¶
func (err ErrLoginSourceAlreadyExist) Error() string
type ErrLoginSourceInUse ¶
type ErrLoginSourceInUse struct {
ID int64
}
ErrLoginSourceInUse represents a "LoginSourceInUse" kind of error.
func (ErrLoginSourceInUse) Error ¶
func (err ErrLoginSourceInUse) Error() string
type ErrLoginSourceNotExist ¶
type ErrLoginSourceNotExist struct {
ID int64
}
ErrLoginSourceNotExist represents a "LoginSourceNotExist" kind of error.
func (ErrLoginSourceNotExist) Error ¶
func (err ErrLoginSourceNotExist) Error() string
type ErrMilestoneNotExist ¶
ErrMilestoneNotExist represents a "MilestoneNotExist" kind of error.
func (ErrMilestoneNotExist) Error ¶
func (err ErrMilestoneNotExist) Error() string
type ErrNamePatternNotAllowed ¶
type ErrNamePatternNotAllowed struct {
Pattern string
}
ErrNamePatternNotAllowed represents a "pattern not allowed" error.
func (ErrNamePatternNotAllowed) Error ¶
func (err ErrNamePatternNotAllowed) Error() string
type ErrNameReserved ¶
type ErrNameReserved struct {
Name string
}
ErrNameReserved represents a "reserved name" error.
func (ErrNameReserved) Error ¶
func (err ErrNameReserved) Error() string
type ErrPullRequestAlreadyExists ¶ added in v1.0.0
type ErrPullRequestAlreadyExists struct { ID int64 IssueID int64 HeadRepoID int64 BaseRepoID int64 HeadBranch string BaseBranch string }
ErrPullRequestAlreadyExists represents a "PullRequestAlreadyExists"-error
func (ErrPullRequestAlreadyExists) Error ¶ added in v1.0.0
func (err ErrPullRequestAlreadyExists) Error() string
Error does pretty-printing :D
type ErrPullRequestNotExist ¶
type ErrPullRequestNotExist struct { ID int64 IssueID int64 HeadRepoID int64 BaseRepoID int64 HeadBranch string BaseBranch string }
ErrPullRequestNotExist represents a "PullRequestNotExist" kind of error.
func (ErrPullRequestNotExist) Error ¶
func (err ErrPullRequestNotExist) Error() string
type ErrReachLimitOfRepo ¶
type ErrReachLimitOfRepo struct {
Limit int
}
ErrReachLimitOfRepo represents a "ReachLimitOfRepo" kind of error.
func (ErrReachLimitOfRepo) Error ¶
func (err ErrReachLimitOfRepo) Error() string
type ErrReleaseAlreadyExist ¶
type ErrReleaseAlreadyExist struct {
TagName string
}
ErrReleaseAlreadyExist represents a "ReleaseAlreadyExist" kind of error.
func (ErrReleaseAlreadyExist) Error ¶
func (err ErrReleaseAlreadyExist) Error() string
type ErrReleaseNotExist ¶
ErrReleaseNotExist represents a "ReleaseNotExist" kind of error.
func (ErrReleaseNotExist) Error ¶
func (err ErrReleaseNotExist) Error() string
type ErrRepoAlreadyExist ¶
ErrRepoAlreadyExist represents a "RepoAlreadyExist" kind of error.
func (ErrRepoAlreadyExist) Error ¶
func (err ErrRepoAlreadyExist) Error() string
type ErrRepoFileAlreadyExist ¶
type ErrRepoFileAlreadyExist struct {
FileName string
}
ErrRepoFileAlreadyExist represents a "RepoFileAlreadyExist" kind of error.
func (ErrRepoFileAlreadyExist) Error ¶
func (err ErrRepoFileAlreadyExist) Error() string
type ErrRepoNotExist ¶
ErrRepoNotExist represents a "RepoNotExist" kind of error.
func (ErrRepoNotExist) Error ¶
func (err ErrRepoNotExist) Error() string
type ErrRepoRedirectNotExist ¶ added in v1.1.0
ErrRepoRedirectNotExist represents a "RepoRedirectNotExist" kind of error.
func (ErrRepoRedirectNotExist) Error ¶ added in v1.1.0
func (err ErrRepoRedirectNotExist) Error() string
type ErrTeamAlreadyExist ¶
ErrTeamAlreadyExist represents a "TeamAlreadyExist" kind of error.
func (ErrTeamAlreadyExist) Error ¶
func (err ErrTeamAlreadyExist) Error() string
type ErrTwoFactorNotEnrolled ¶ added in v1.1.0
type ErrTwoFactorNotEnrolled struct {
UID int64
}
ErrTwoFactorNotEnrolled indicates that a user is not enrolled in two-factor authentication.
func (ErrTwoFactorNotEnrolled) Error ¶ added in v1.1.0
func (err ErrTwoFactorNotEnrolled) Error() string
type ErrUpdateTaskNotExist ¶
type ErrUpdateTaskNotExist struct {
UUID string
}
ErrUpdateTaskNotExist represents a "UpdateTaskNotExist" kind of error.
func (ErrUpdateTaskNotExist) Error ¶
func (err ErrUpdateTaskNotExist) Error() string
type ErrUploadNotExist ¶
ErrUploadNotExist represents a "UploadNotExist" kind of error.
func (ErrUploadNotExist) Error ¶
func (err ErrUploadNotExist) Error() string
type ErrUserAlreadyExist ¶
type ErrUserAlreadyExist struct {
Name string
}
ErrUserAlreadyExist represents a "user already exists" error.
func (ErrUserAlreadyExist) Error ¶
func (err ErrUserAlreadyExist) Error() string
type ErrUserHasOrgs ¶
type ErrUserHasOrgs struct {
UID int64
}
ErrUserHasOrgs represents a "UserHasOrgs" kind of error.
func (ErrUserHasOrgs) Error ¶
func (err ErrUserHasOrgs) Error() string
type ErrUserNotAllowedCreateOrg ¶ added in v1.1.0
type ErrUserNotAllowedCreateOrg struct { }
ErrUserNotAllowedCreateOrg represents a "UserNotAllowedCreateOrg" kind of error.
func (ErrUserNotAllowedCreateOrg) Error ¶ added in v1.1.0
func (err ErrUserNotAllowedCreateOrg) Error() string
type ErrUserNotExist ¶
ErrUserNotExist represents a "UserNotExist" kind of error.
func (ErrUserNotExist) Error ¶
func (err ErrUserNotExist) Error() string
type ErrUserOwnRepos ¶
type ErrUserOwnRepos struct {
UID int64
}
ErrUserOwnRepos represents a "UserOwnRepos" kind of error.
func (ErrUserOwnRepos) Error ¶
func (err ErrUserOwnRepos) Error() string
type ErrWebhookNotExist ¶
type ErrWebhookNotExist struct {
ID int64
}
ErrWebhookNotExist represents a "WebhookNotExist" kind of error.
func (ErrWebhookNotExist) Error ¶
func (err ErrWebhookNotExist) Error() string
type ErrWikiAlreadyExist ¶
type ErrWikiAlreadyExist struct {
Title string
}
ErrWikiAlreadyExist represents a "WikiAlreadyExist" kind of error.
func (ErrWikiAlreadyExist) Error ¶
func (err ErrWikiAlreadyExist) Error() string
type ExternalLoginUser ¶ added in v1.1.0
type ExternalLoginUser struct { ExternalID string `xorm:"NOT NULL"` UserID int64 `xorm:"NOT NULL"` LoginSourceID int64 `xorm:"NOT NULL"` }
ExternalLoginUser makes the connecting between some existing user and additional external login sources
func ListAccountLinks ¶ added in v1.1.0
func ListAccountLinks(user *User) ([]*ExternalLoginUser, error)
ListAccountLinks returns a map with the ExternalLoginUser and its LoginSource
type ExternalTrackerConfig ¶ added in v1.1.0
type ExternalTrackerConfig struct { ExternalTrackerURL string ExternalTrackerFormat string ExternalTrackerStyle string }
ExternalTrackerConfig describes external tracker config
func (*ExternalTrackerConfig) FromDB ¶ added in v1.1.0
func (cfg *ExternalTrackerConfig) FromDB(bs []byte) error
FromDB fills up a ExternalTrackerConfig from serialized format.
func (*ExternalTrackerConfig) ToDB ¶ added in v1.1.0
func (cfg *ExternalTrackerConfig) ToDB() ([]byte, error)
ToDB exports a ExternalTrackerConfig to a serialized format.
type ExternalWikiConfig ¶ added in v1.1.0
type ExternalWikiConfig struct {
ExternalWikiURL string
}
ExternalWikiConfig describes external wiki config
func (*ExternalWikiConfig) FromDB ¶ added in v1.1.0
func (cfg *ExternalWikiConfig) FromDB(bs []byte) error
FromDB fills up a ExternalWikiConfig from serialized format.
func (*ExternalWikiConfig) ToDB ¶ added in v1.1.0
func (cfg *ExternalWikiConfig) ToDB() ([]byte, error)
ToDB exports a ExternalWikiConfig to a serialized format.
type Follow ¶
type Follow struct { ID int64 `xorm:"pk autoincr"` UserID int64 `xorm:"UNIQUE(follow)"` FollowID int64 `xorm:"UNIQUE(follow)"` }
Follow represents relations of user and his/her followers.
type GraphItem ¶ added in v1.1.0
type GraphItem struct { GraphAcii string Relation string Branch string Rev string Date string Author string AuthorEmail string ShortRev string Subject string OnlyRelation bool }
GraphItem represent one commit, or one relation in timeline
type GraphItems ¶ added in v1.1.0
type GraphItems []GraphItem
GraphItems is a list of commits from all branches
func GetCommitGraph ¶ added in v1.1.0
func GetCommitGraph(r *git.Repository) (GraphItems, error)
GetCommitGraph return a list of commit (GraphItems) from all branches
type HookContentType ¶
type HookContentType int
HookContentType is the content type of a web hook
const ( // ContentTypeJSON is a JSON payload for web hooks ContentTypeJSON HookContentType = iota + 1 // ContentTypeForm is an url-encoded form payload for web hook ContentTypeForm )
func ToHookContentType ¶
func ToHookContentType(name string) HookContentType
ToHookContentType returns HookContentType by given name.
func (HookContentType) Name ¶
func (t HookContentType) Name() string
Name returns the name of a given web hook's content type
type HookEvent ¶
type HookEvent struct { PushOnly bool `json:"push_only"` SendEverything bool `json:"send_everything"` ChooseEvents bool `json:"choose_events"` HookEvents `json:"events"` }
HookEvent represents events that will delivery hook.
type HookEventType ¶
type HookEventType string
HookEventType is the type of an hook event
const ( HookEventCreate HookEventType = "create" HookEventPush HookEventType = "push" HookEventPullRequest HookEventType = "pull_request" )
Types of hook events
type HookEvents ¶
type HookEvents struct { Create bool `json:"create"` Push bool `json:"push"` PullRequest bool `json:"pull_request"` }
HookEvents is a set of web hook events
type HookRequest ¶
HookRequest represents hook task request information.
type HookResponse ¶
type HookResponse struct { Status int `json:"status"` Headers map[string]string `json:"headers"` Body string `json:"body"` }
HookResponse represents hook task response information.
type HookTask ¶
type HookTask struct { ID int64 `xorm:"pk autoincr"` RepoID int64 `xorm:"INDEX"` HookID int64 UUID string Type HookTaskType URL string `xorm:"TEXT"` api.Payloader `xorm:"-"` PayloadContent string `xorm:"TEXT"` ContentType HookContentType EventType HookEventType IsSSL bool IsDelivered bool Delivered int64 DeliveredString string `xorm:"-"` // History info. IsSucceed bool RequestContent string `xorm:"TEXT"` RequestInfo *HookRequest `xorm:"-"` ResponseContent string `xorm:"TEXT"` ResponseInfo *HookResponse `xorm:"-"` }
HookTask represents a hook task.
func (*HookTask) BeforeUpdate ¶
func (t *HookTask) BeforeUpdate()
BeforeUpdate will be invoked by XORM before updating a record representing this object
type HookTaskType ¶
type HookTaskType int
HookTaskType is the type of an hook task
const ( GOGS HookTaskType = iota + 1 SLACK )
Types of hook tasks
func ToHookTaskType ¶
func ToHookTaskType(name string) HookTaskType
ToHookTaskType returns HookTaskType by given name.
func (HookTaskType) Name ¶
func (t HookTaskType) Name() string
Name returns the name of an hook task type
type Issue ¶
type Issue struct { ID int64 `xorm:"pk autoincr"` RepoID int64 `xorm:"INDEX UNIQUE(repo_index)"` Repo *Repository `xorm:"-"` Index int64 `xorm:"UNIQUE(repo_index)"` // Index in one repository. PosterID int64 `xorm:"INDEX"` Poster *User `xorm:"-"` Title string `xorm:"name"` Content string `xorm:"TEXT"` RenderedContent string `xorm:"-"` Labels []*Label `xorm:"-"` MilestoneID int64 `xorm:"INDEX"` Milestone *Milestone `xorm:"-"` Priority int AssigneeID int64 `xorm:"INDEX"` Assignee *User `xorm:"-"` IsClosed bool `xorm:"INDEX"` IsRead bool `xorm:"-"` IsPull bool `xorm:"INDEX"` // Indicates whether is a pull request or not. PullRequest *PullRequest `xorm:"-"` NumComments int Deadline time.Time `xorm:"-"` DeadlineUnix int64 `xorm:"INDEX"` Created time.Time `xorm:"-"` CreatedUnix int64 `xorm:"INDEX"` Updated time.Time `xorm:"-"` UpdatedUnix int64 `xorm:"INDEX"` Attachments []*Attachment `xorm:"-"` Comments []*Comment `xorm:"-"` }
Issue represents an issue or pull request of repository.
func GetIssueByID ¶
GetIssueByID returns an issue by given ID.
func GetIssueByIndex ¶
GetIssueByIndex returns issue by index in a repository.
func GetIssueByRef ¶
GetIssueByRef returns an Issue specified by a GFM reference. See https://help.github.com/articles/writing-on-github#references for more information on the syntax.
func GetRawIssueByIndex ¶
GetRawIssueByIndex returns raw issue without loading attributes by index in a repository.
func Issues ¶
func Issues(opts *IssuesOptions) ([]*Issue, error)
Issues returns a list of issues by given conditions.
func (*Issue) APIFormat ¶
APIFormat assumes some fields assigned with values: Required - Poster, Labels, Optional - Milestone, Assignee, PullRequest
func (*Issue) AfterSet ¶
AfterSet is invoked from XORM after setting the value of a field of this object.
func (*Issue) BeforeInsert ¶
func (issue *Issue) BeforeInsert()
BeforeInsert is invoked from XORM before inserting an object of this type.
func (*Issue) BeforeUpdate ¶
func (issue *Issue) BeforeUpdate()
BeforeUpdate is invoked from XORM before updating this object.
func (*Issue) ChangeAssignee ¶
ChangeAssignee changes the Asssignee field of this issue.
func (*Issue) ChangeContent ¶
ChangeContent changes issue content, as the given user.
func (*Issue) ChangeStatus ¶
func (issue *Issue) ChangeStatus(doer *User, repo *Repository, isClosed bool) (err error)
ChangeStatus changes issue status to open or closed.
func (*Issue) ChangeTitle ¶
ChangeTitle changes the title of this issue, as the given user.
func (*Issue) ClearLabels ¶
ClearLabels removes all issue labels as the given user. Triggers appropriate WebHooks, if any.
func (*Issue) GetAssignee ¶
GetAssignee sets the Assignee attribute of this issue.
func (*Issue) GetPullRequest ¶ added in v1.1.0
func (issue *Issue) GetPullRequest() (pr *PullRequest, err error)
GetPullRequest returns the issue pull request
func (*Issue) LoadAttributes ¶
LoadAttributes loads the attribute of this issue.
func (*Issue) MailParticipants ¶
MailParticipants sends new issue thread created emails to repository watchers and mentioned people.
func (*Issue) RemoveLabel ¶
RemoveLabel removes a label from issue by given ID.
func (*Issue) ReplaceLabels ¶
ReplaceLabels removes all current labels and add new labels to the issue. Triggers appropriate WebHooks, if any.
type IssueLabel ¶
type IssueLabel struct { ID int64 `xorm:"pk autoincr"` IssueID int64 `xorm:"UNIQUE(s)"` LabelID int64 `xorm:"UNIQUE(s)"` }
IssueLabel represents an issue-label relation.
type IssueList ¶ added in v1.1.0
type IssueList []*Issue
IssueList defines a list of issues
func (IssueList) LoadAttributes ¶ added in v1.1.0
LoadAttributes loads atrributes of the issues
func (IssueList) LoadRepositories ¶ added in v1.1.0
func (issues IssueList) LoadRepositories() ([]*Repository, error)
LoadRepositories loads issues' all repositories
type IssueStats ¶
type IssueStats struct {
OpenCount, ClosedCount int64
YourRepositoriesCount int64
AssignCount int64
CreateCount int64
MentionCount int64
}
IssueStats represents issue statistic information.
func GetIssueStats ¶
func GetIssueStats(opts *IssueStatsOptions) (*IssueStats, error)
GetIssueStats returns issue statistic information by given conditions.
func GetUserIssueStats ¶
func GetUserIssueStats(repoID, uid int64, repoIDs []int64, filterMode int, isPull bool) *IssueStats
GetUserIssueStats returns issue statistic information for dashboard by given conditions.
type IssueStatsOptions ¶
type IssueStatsOptions struct { FilterMode int RepoID int64 Labels string MilestoneID int64 AssigneeID int64 MentionedID int64 PosterID int64 IsPull bool IssueIDs []int64 }
IssueStatsOptions contains parameters accepted by GetIssueStats.
type IssueUser ¶
type IssueUser struct { ID int64 `xorm:"pk autoincr"` UID int64 `xorm:"INDEX"` // User ID. IssueID int64 IsRead bool IsAssigned bool IsMentioned bool }
IssueUser represents an issue-user relation.
type IssuesOptions ¶
type IssuesOptions struct { RepoID int64 AssigneeID int64 PosterID int64 MentionedID int64 MilestoneID int64 RepoIDs []int64 Page int IsClosed util.OptionalBool IsPull util.OptionalBool Labels string SortType string IssueIDs []int64 }
IssuesOptions represents options of an issue.
type LDAPConfig ¶
LDAPConfig holds configuration for LDAP login source.
func (*LDAPConfig) FromDB ¶
func (cfg *LDAPConfig) FromDB(bs []byte) error
FromDB fills up a LDAPConfig from serialized format.
func (*LDAPConfig) SecurityProtocolName ¶
func (cfg *LDAPConfig) SecurityProtocolName() string
SecurityProtocolName returns the name of configured security protocol.
func (*LDAPConfig) ToDB ¶
func (cfg *LDAPConfig) ToDB() ([]byte, error)
ToDB exports a LDAPConfig to a serialized format.
type LFSMetaObject ¶ added in v1.1.0
type LFSMetaObject struct { ID int64 `xorm:"pk autoincr"` Oid string `xorm:"UNIQUE(s) INDEX NOT NULL"` Size int64 `xorm:"NOT NULL"` RepositoryID int64 `xorm:"UNIQUE(s) INDEX NOT NULL"` Existing bool `xorm:"-"` Created time.Time `xorm:"-"` CreatedUnix int64 }
LFSMetaObject stores metadata for LFS tracked files.
func GetLFSMetaObjectByOid ¶ added in v1.1.0
func GetLFSMetaObjectByOid(oid string) (*LFSMetaObject, error)
GetLFSMetaObjectByOid selects a LFSMetaObject entry from database by its OID. It may return ErrLFSObjectNotExist or a database error. If the error is nil, the returned pointer is a valid LFSMetaObject.
func NewLFSMetaObject ¶ added in v1.1.0
func NewLFSMetaObject(m *LFSMetaObject) (*LFSMetaObject, error)
NewLFSMetaObject stores a given populated LFSMetaObject structure in the database if it is not already present.
func (*LFSMetaObject) AfterSet ¶ added in v1.1.0
func (m *LFSMetaObject) AfterSet(colName string, _ xorm.Cell)
AfterSet stores the LFSMetaObject creation time in the database as local time.
func (*LFSMetaObject) BeforeInsert ¶ added in v1.1.0
func (m *LFSMetaObject) BeforeInsert()
BeforeInsert sets the time at which the LFSMetaObject was created.
type LFSTokenResponse ¶ added in v1.1.0
LFSTokenResponse defines the JSON structure in which the JWT token is stored. This structure is fetched via SSH and passed by the Git LFS client to the server endpoint for authorization.
type Label ¶
type Label struct { ID int64 `xorm:"pk autoincr"` RepoID int64 `xorm:"INDEX"` Name string Color string `xorm:"VARCHAR(7)"` NumIssues int NumClosedIssues int NumOpenIssues int `xorm:"-"` IsChecked bool `xorm:"-"` }
Label represents a label of repository for issues.
func GetLabelByID ¶
GetLabelByID returns a label by given ID.
func GetLabelInRepoByID ¶
GetLabelInRepoByID returns a label by ID in given repository.
func GetLabelInRepoByName ¶ added in v1.0.0
GetLabelInRepoByName returns a label by name in given repository.
func GetLabelsByIssueID ¶
GetLabelsByIssueID returns all labels that belong to given issue by ID.
func GetLabelsByRepoID ¶
GetLabelsByRepoID returns all labels that belong to given repository by ID.
func GetLabelsInRepoByIDs ¶
GetLabelsInRepoByIDs returns a list of labels by IDs in given repository, it silently ignores label IDs that are not belong to the repository.
func (*Label) CalOpenIssues ¶
func (label *Label) CalOpenIssues()
CalOpenIssues calculates the open issues of label.
func (*Label) ForegroundColor ¶
ForegroundColor calculates the text color for labels based on their background color.
type LoginSource ¶
type LoginSource struct { ID int64 `xorm:"pk autoincr"` Type LoginType Name string `xorm:"UNIQUE"` IsActived bool `xorm:"INDEX NOT NULL DEFAULT false"` Cfg core.Conversion `xorm:"TEXT"` Created time.Time `xorm:"-"` CreatedUnix int64 `xorm:"INDEX"` Updated time.Time `xorm:"-"` UpdatedUnix int64 `xorm:"INDEX"` }
LoginSource represents an external way for authorizing users.
func GetActiveOAuth2LoginSourceByName ¶ added in v1.1.0
func GetActiveOAuth2LoginSourceByName(name string) (*LoginSource, error)
GetActiveOAuth2LoginSourceByName returns a OAuth2 LoginSource based on the given name
func GetActiveOAuth2ProviderLoginSources ¶ added in v1.1.0
func GetActiveOAuth2ProviderLoginSources() ([]*LoginSource, error)
GetActiveOAuth2ProviderLoginSources returns all actived LoginOAuth2 sources
func GetLoginSourceByID ¶
func GetLoginSourceByID(id int64) (*LoginSource, error)
GetLoginSourceByID returns login source by given ID.
func LoginSources ¶
func LoginSources() ([]*LoginSource, error)
LoginSources returns a slice of all login sources found in DB.
func (*LoginSource) AfterSet ¶
func (source *LoginSource) AfterSet(colName string, _ xorm.Cell)
AfterSet is invoked from XORM after setting the value of a field of this object.
func (*LoginSource) BeforeInsert ¶
func (source *LoginSource) BeforeInsert()
BeforeInsert is invoked from XORM before inserting an object of this type.
func (*LoginSource) BeforeSet ¶
func (source *LoginSource) BeforeSet(colName string, val xorm.Cell)
BeforeSet is invoked from XORM before setting the value of a field of this object.
func (*LoginSource) BeforeUpdate ¶
func (source *LoginSource) BeforeUpdate()
BeforeUpdate is invoked from XORM before updating this object.
func (*LoginSource) HasTLS ¶
func (source *LoginSource) HasTLS() bool
HasTLS returns true of this source supports TLS.
func (*LoginSource) IsDLDAP ¶
func (source *LoginSource) IsDLDAP() bool
IsDLDAP returns true of this source is of the DLDAP type.
func (*LoginSource) IsLDAP ¶
func (source *LoginSource) IsLDAP() bool
IsLDAP returns true of this source is of the LDAP type.
func (*LoginSource) IsOAuth2 ¶ added in v1.1.0
func (source *LoginSource) IsOAuth2() bool
IsOAuth2 returns true of this source is of the OAuth2 type.
func (*LoginSource) IsPAM ¶
func (source *LoginSource) IsPAM() bool
IsPAM returns true of this source is of the PAM type.
func (*LoginSource) IsSMTP ¶
func (source *LoginSource) IsSMTP() bool
IsSMTP returns true of this source is of the SMTP type.
func (*LoginSource) LDAP ¶
func (source *LoginSource) LDAP() *LDAPConfig
LDAP returns LDAPConfig for this source, if of LDAP type.
func (*LoginSource) OAuth2 ¶ added in v1.1.0
func (source *LoginSource) OAuth2() *OAuth2Config
OAuth2 returns OAuth2Config for this source, if of OAuth2 type.
func (*LoginSource) PAM ¶
func (source *LoginSource) PAM() *PAMConfig
PAM returns PAMConfig for this source, if of PAM type.
func (*LoginSource) SMTP ¶
func (source *LoginSource) SMTP() *SMTPConfig
SMTP returns SMTPConfig for this source, if of SMTP type.
func (*LoginSource) SkipVerify ¶
func (source *LoginSource) SkipVerify() bool
SkipVerify returns true if this source is configured to skip SSL verification.
func (*LoginSource) TypeName ¶
func (source *LoginSource) TypeName() string
TypeName return name of this login source type.
func (*LoginSource) UseTLS ¶
func (source *LoginSource) UseTLS() bool
UseTLS returns true of this source is configured to use TLS.
type MigrateRepoOptions ¶
type MigrateRepoOptions struct { Name string Description string IsPrivate bool IsMirror bool RemoteAddr string }
MigrateRepoOptions contains the repository migrate options
type Milestone ¶
type Milestone struct { ID int64 `xorm:"pk autoincr"` RepoID int64 `xorm:"INDEX"` Name string Content string `xorm:"TEXT"` RenderedContent string `xorm:"-"` IsClosed bool NumIssues int NumClosedIssues int NumOpenIssues int `xorm:"-"` Completeness int // Percentage(1-100). IsOverDue bool `xorm:"-"` DeadlineString string `xorm:"-"` Deadline time.Time `xorm:"-"` DeadlineUnix int64 ClosedDate time.Time `xorm:"-"` ClosedDateUnix int64 }
Milestone represents a milestone of repository.
func GetMilestoneByRepoID ¶
GetMilestoneByRepoID returns the milestone in a repository.
func GetMilestones ¶
GetMilestones returns a list of milestones of given repository and status.
func GetMilestonesByRepoID ¶
GetMilestonesByRepoID returns all milestones of a repository.
func (*Milestone) AfterSet ¶
AfterSet is invoked from XORM after setting the value of a field of this object.
func (*Milestone) BeforeInsert ¶
func (m *Milestone) BeforeInsert()
BeforeInsert is invoked from XORM before inserting an object of this type.
func (*Milestone) BeforeUpdate ¶
func (m *Milestone) BeforeUpdate()
BeforeUpdate is invoked from XORM before updating this object.
type Mirror ¶
type Mirror struct { ID int64 `xorm:"pk autoincr"` RepoID int64 `xorm:"INDEX"` Repo *Repository `xorm:"-"` Interval int // Hour. EnablePrune bool `xorm:"NOT NULL DEFAULT true"` Updated time.Time `xorm:"-"` UpdatedUnix int64 `xorm:"INDEX"` NextUpdate time.Time `xorm:"-"` NextUpdateUnix int64 `xorm:"INDEX"` // contains filtered or unexported fields }
Mirror represents mirror information of a repository.
func GetMirrorByRepoID ¶
GetMirrorByRepoID returns mirror information of a repository.
func (*Mirror) Address ¶
Address returns mirror address from Git repository config without credentials.
func (*Mirror) AfterSet ¶
AfterSet is invoked from XORM after setting the value of a field of this object.
func (*Mirror) BeforeInsert ¶
func (m *Mirror) BeforeInsert()
BeforeInsert will be invoked by XORM before inserting a record
func (*Mirror) BeforeUpdate ¶
func (m *Mirror) BeforeUpdate()
BeforeUpdate is invoked from XORM before updating this object.
func (*Mirror) FullAddress ¶
FullAddress returns mirror address from Git repository config.
func (*Mirror) SaveAddress ¶
SaveAddress writes new address to Git repository config.
func (*Mirror) ScheduleNextUpdate ¶
func (m *Mirror) ScheduleNextUpdate()
ScheduleNextUpdate calculates and sets next update time.
type MirrorRepositoryList ¶
type MirrorRepositoryList []*Repository
MirrorRepositoryList contains the mirror repositories
func (MirrorRepositoryList) LoadAttributes ¶
func (repos MirrorRepositoryList) LoadAttributes() error
LoadAttributes loads the attributes for the given MirrorRepositoryList
type NewIssueOptions ¶
type NewIssueOptions struct { Repo *Repository Issue *Issue LabelIDs []int64 Attachments []string // In UUID format. IsPull bool }
NewIssueOptions represents the options of a new issue.
type Notice ¶
type Notice struct { ID int64 `xorm:"pk autoincr"` Type NoticeType Description string `xorm:"TEXT"` Created time.Time `xorm:"-"` CreatedUnix int64 `xorm:"INDEX"` }
Notice represents a system notice for admin.
func (*Notice) AfterSet ¶
AfterSet is invoked from XORM after setting the value of a field of this object.
func (*Notice) BeforeInsert ¶
func (n *Notice) BeforeInsert()
BeforeInsert is invoked from XORM before inserting an object of this type.
type NoticeType ¶
type NoticeType int
NoticeType describes the notice type
const ( //NoticeRepository type NoticeRepository NoticeType = iota + 1 )
type Notification ¶ added in v1.1.0
type Notification struct { ID int64 `xorm:"pk autoincr"` UserID int64 `xorm:"INDEX NOT NULL"` RepoID int64 `xorm:"INDEX NOT NULL"` Status NotificationStatus `xorm:"SMALLINT INDEX NOT NULL"` Source NotificationSource `xorm:"SMALLINT INDEX NOT NULL"` IssueID int64 `xorm:"INDEX NOT NULL"` CommitID string `xorm:"INDEX"` UpdatedBy int64 `xorm:"INDEX NOT NULL"` Issue *Issue `xorm:"-"` Repository *Repository `xorm:"-"` Created time.Time `xorm:"-"` CreatedUnix int64 `xorm:"INDEX NOT NULL"` Updated time.Time `xorm:"-"` UpdatedUnix int64 `xorm:"INDEX NOT NULL"` }
Notification represents a notification
func NotificationsForUser ¶ added in v1.1.0
func NotificationsForUser(user *User, statuses []NotificationStatus, page, perPage int) ([]*Notification, error)
NotificationsForUser returns notifications for a given user and status
func (*Notification) BeforeInsert ¶ added in v1.1.0
func (n *Notification) BeforeInsert()
BeforeInsert runs while inserting a record
func (*Notification) BeforeUpdate ¶ added in v1.1.0
func (n *Notification) BeforeUpdate()
BeforeUpdate runs while updating a record
func (*Notification) GetIssue ¶ added in v1.1.0
func (n *Notification) GetIssue() (*Issue, error)
GetIssue returns the issue of the notification
func (*Notification) GetRepo ¶ added in v1.1.0
func (n *Notification) GetRepo() (*Repository, error)
GetRepo returns the repo of the notification
type NotificationSource ¶ added in v1.1.0
type NotificationSource uint8
NotificationSource is the source of the notification (issue, PR, commit, etc)
const ( // NotificationSourceIssue is a notification of an issue NotificationSourceIssue NotificationSource = iota + 1 // NotificationSourcePullRequest is a notification of a pull request NotificationSourcePullRequest // NotificationSourceCommit is a notification of a commit NotificationSourceCommit )
type NotificationStatus ¶ added in v1.1.0
type NotificationStatus uint8
NotificationStatus is the status of the notification (read or unread)
const ( // NotificationStatusUnread represents an unread notification NotificationStatusUnread NotificationStatus = iota + 1 // NotificationStatusRead represents a read notification NotificationStatusRead // NotificationStatusPinned represents a pinned notification NotificationStatusPinned )
type OAuth2Config ¶ added in v1.1.0
OAuth2Config holds configuration for the OAuth2 login source.
func (*OAuth2Config) FromDB ¶ added in v1.1.0
func (cfg *OAuth2Config) FromDB(bs []byte) error
FromDB fills up an OAuth2Config from serialized format.
func (*OAuth2Config) ToDB ¶ added in v1.1.0
func (cfg *OAuth2Config) ToDB() ([]byte, error)
ToDB exports an SMTPConfig to a serialized format.
type OAuth2Provider ¶ added in v1.1.0
OAuth2Provider describes the display values of a single OAuth2 provider
type OrgUser ¶
type OrgUser struct { ID int64 `xorm:"pk autoincr"` UID int64 `xorm:"INDEX UNIQUE(s)"` OrgID int64 `xorm:"INDEX UNIQUE(s)"` IsPublic bool `xorm:"INDEX"` IsOwner bool NumTeams int }
OrgUser represents an organization-user relation.
func GetOrgUsersByOrgID ¶
GetOrgUsersByOrgID returns all organization-user relations by organization ID.
type PAMConfig ¶
type PAMConfig struct {
ServiceName string // pam service (e.g. system-auth)
}
PAMConfig holds configuration for the PAM login source.
type ProtectedBranch ¶ added in v1.1.0
type ProtectedBranch struct { ID int64 `xorm:"pk autoincr"` RepoID int64 `xorm:"UNIQUE(s)"` BranchName string `xorm:"UNIQUE(s)"` CanPush bool Created time.Time `xorm:"-"` CreatedUnix int64 Updated time.Time `xorm:"-"` UpdatedUnix int64 }
ProtectedBranch struct
func GetProtectedBranchBy ¶ added in v1.1.0
func GetProtectedBranchBy(repoID int64, BranchName string) (*ProtectedBranch, error)
GetProtectedBranchBy getting protected branch by ID/Name
func GetProtectedBranchByRepoID ¶ added in v1.1.0
func GetProtectedBranchByRepoID(RepoID int64) ([]*ProtectedBranch, error)
GetProtectedBranchByRepoID getting protected branch by repo ID
func (*ProtectedBranch) BeforeInsert ¶ added in v1.1.0
func (protectBranch *ProtectedBranch) BeforeInsert()
BeforeInsert before protected branch insert create and update time
func (*ProtectedBranch) BeforeUpdate ¶ added in v1.1.0
func (protectBranch *ProtectedBranch) BeforeUpdate()
BeforeUpdate before protected branch update time
type PublicKey ¶
type PublicKey struct { ID int64 `xorm:"pk autoincr"` OwnerID int64 `xorm:"INDEX NOT NULL"` Name string `xorm:"NOT NULL"` Fingerprint string `xorm:"NOT NULL"` Content string `xorm:"TEXT NOT NULL"` Mode AccessMode `xorm:"NOT NULL DEFAULT 2"` Type KeyType `xorm:"NOT NULL DEFAULT 1"` Created time.Time `xorm:"-"` CreatedUnix int64 Updated time.Time `xorm:"-"` // Note: Updated must below Created for AfterSet. UpdatedUnix int64 HasRecentActivity bool `xorm:"-"` HasUsed bool `xorm:"-"` }
PublicKey represents a user or deploy SSH public key.
func AddPublicKey ¶
AddPublicKey adds new public key to database and authorized_keys file.
func GetPublicKeyByID ¶
GetPublicKeyByID returns public key by given ID.
func ListPublicKeys ¶
ListPublicKeys returns a list of public keys belongs to given user.
func SearchPublicKeyByContent ¶
SearchPublicKeyByContent searches content as prefix (leak e-mail part) and returns public key found.
func (*PublicKey) AfterSet ¶
AfterSet is invoked from XORM after setting the value of a field of this object.
func (*PublicKey) AuthorizedString ¶
AuthorizedString returns formatted public key string for authorized_keys file.
func (*PublicKey) BeforeInsert ¶
func (key *PublicKey) BeforeInsert()
BeforeInsert will be invoked by XORM before inserting a record
func (*PublicKey) BeforeUpdate ¶
func (key *PublicKey) BeforeUpdate()
BeforeUpdate is invoked from XORM before updating this object.
type PullRequest ¶
type PullRequest struct { ID int64 `xorm:"pk autoincr"` Type PullRequestType Status PullRequestStatus IssueID int64 `xorm:"INDEX"` Issue *Issue `xorm:"-"` Index int64 HeadRepoID int64 `xorm:"INDEX"` HeadRepo *Repository `xorm:"-"` BaseRepoID int64 `xorm:"INDEX"` BaseRepo *Repository `xorm:"-"` HeadUserName string HeadBranch string BaseBranch string MergeBase string `xorm:"VARCHAR(40)"` HasMerged bool `xorm:"INDEX"` MergedCommitID string `xorm:"VARCHAR(40)"` MergerID int64 `xorm:"INDEX"` Merger *User `xorm:"-"` Merged time.Time `xorm:"-"` MergedUnix int64 `xorm:"INDEX"` }
PullRequest represents relation between pull request and repositories.
func GetPullRequestByID ¶
func GetPullRequestByID(id int64) (*PullRequest, error)
GetPullRequestByID returns a pull request by given ID.
func GetPullRequestByIndex ¶ added in v1.0.0
func GetPullRequestByIndex(repoID int64, index int64) (*PullRequest, error)
GetPullRequestByIndex returns a pull request by the given index
func GetPullRequestByIssueID ¶
func GetPullRequestByIssueID(issueID int64) (*PullRequest, error)
GetPullRequestByIssueID returns pull request by given issue ID.
func GetUnmergedPullRequest ¶
func GetUnmergedPullRequest(headRepoID, baseRepoID int64, headBranch, baseBranch string) (*PullRequest, error)
GetUnmergedPullRequest returns a pull request that is open and has not been merged by given head/base and repo/branch.
func GetUnmergedPullRequestsByBaseInfo ¶
func GetUnmergedPullRequestsByBaseInfo(repoID int64, branch string) ([]*PullRequest, error)
GetUnmergedPullRequestsByBaseInfo returns all pull requests that are open and has not been merged by given base information (repo and branch).
func GetUnmergedPullRequestsByHeadInfo ¶
func GetUnmergedPullRequestsByHeadInfo(repoID int64, branch string) ([]*PullRequest, error)
GetUnmergedPullRequestsByHeadInfo returns all pull requests that are open and has not been merged by given head information (repo and branch).
func PullRequests ¶ added in v1.0.0
func PullRequests(baseRepoID int64, opts *PullRequestsOptions) ([]*PullRequest, int64, error)
PullRequests returns all pull requests for a base Repo by the given conditions
func (*PullRequest) APIFormat ¶
func (pr *PullRequest) APIFormat() *api.PullRequest
APIFormat assumes following fields have been assigned with valid values: Required - Issue Optional - Merger
func (*PullRequest) AddToTaskQueue ¶
func (pr *PullRequest) AddToTaskQueue()
AddToTaskQueue adds itself to pull request test task queue.
func (*PullRequest) AfterSet ¶
func (pr *PullRequest) AfterSet(colName string, _ xorm.Cell)
AfterSet is invoked from XORM after setting the value of a field of this object. Note: don't try to get Issue because will end up recursive querying.
func (*PullRequest) BeforeUpdate ¶
func (pr *PullRequest) BeforeUpdate()
BeforeUpdate is invoked from XORM before updating an object of this type.
func (*PullRequest) CanAutoMerge ¶
func (pr *PullRequest) CanAutoMerge() bool
CanAutoMerge returns true if this pull request can be merged automatically.
func (*PullRequest) GetBaseRepo ¶
func (pr *PullRequest) GetBaseRepo() (err error)
GetBaseRepo loads the target repository
func (*PullRequest) GetHeadRepo ¶
func (pr *PullRequest) GetHeadRepo() error
GetHeadRepo loads the head repository
func (*PullRequest) IsChecking ¶
func (pr *PullRequest) IsChecking() bool
IsChecking returns true if this pull request is still checking conflict.
func (*PullRequest) LoadAttributes ¶
func (pr *PullRequest) LoadAttributes() error
LoadAttributes loads pull request attributes from database
func (*PullRequest) LoadIssue ¶
func (pr *PullRequest) LoadIssue() (err error)
LoadIssue loads issue information from database
func (*PullRequest) Merge ¶
func (pr *PullRequest) Merge(doer *User, baseGitRepo *git.Repository) (err error)
Merge merges pull request to base repository. FIXME: add repoWorkingPull make sure two merges does not happen at same time.
func (*PullRequest) PushToBaseRepo ¶
func (pr *PullRequest) PushToBaseRepo() (err error)
PushToBaseRepo pushes commits from branches of head repository to corresponding branches of base repository. FIXME: Only push branches that are actually updates?
func (*PullRequest) Update ¶
func (pr *PullRequest) Update() error
Update updates all fields of pull request.
func (*PullRequest) UpdateCols ¶
func (pr *PullRequest) UpdateCols(cols ...string) error
UpdateCols updates specific fields of pull request.
func (*PullRequest) UpdatePatch ¶
func (pr *PullRequest) UpdatePatch() (err error)
UpdatePatch generates and saves a new patch.
type PullRequestList ¶
type PullRequestList []*PullRequest
PullRequestList defines a list of pull requests
func (PullRequestList) LoadAttributes ¶
func (prs PullRequestList) LoadAttributes() error
LoadAttributes load all the prs attributes
type PullRequestStatus ¶
type PullRequestStatus int
PullRequestStatus defines pull request status
const ( PullRequestStatusConflict PullRequestStatus = iota PullRequestStatusChecking PullRequestStatusMergeable PullRequestStatusManuallyMerged )
Enumerate all the pull request status
type PullRequestType ¶
type PullRequestType int
PullRequestType defines pull request type
const ( PullRequestGitea PullRequestType = iota PullRequestGit )
Enumerate all the pull request types
type PullRequestsOptions ¶ added in v1.0.0
type PullRequestsOptions struct { Page int State string SortType string Labels []string MilestoneID int64 }
PullRequestsOptions holds the options for PRs
type PushCommit ¶
type PushCommit struct { Sha1 string Message string AuthorEmail string AuthorName string CommitterEmail string CommitterName string Timestamp time.Time }
PushCommit represents a commit in a push operation.
func CommitToPushCommit ¶
func CommitToPushCommit(commit *git.Commit) *PushCommit
CommitToPushCommit transforms a git.Commit to PushCommit type.
type PushCommits ¶
type PushCommits struct { Len int Commits []*PushCommit CompareURL string // contains filtered or unexported fields }
PushCommits represents list of commits in a push operation.
func ListToPushCommits ¶
func ListToPushCommits(l *list.List) *PushCommits
ListToPushCommits transforms a list.List to PushCommits type.
func NewPushCommits ¶
func NewPushCommits() *PushCommits
NewPushCommits creates a new PushCommits object.
func (*PushCommits) AvatarLink ¶
func (pc *PushCommits) AvatarLink(email string) string
AvatarLink tries to match user in database with e-mail in order to show custom avatar, and falls back to general avatar link.
func (*PushCommits) ToAPIPayloadCommits ¶ added in v1.0.0
func (pc *PushCommits) ToAPIPayloadCommits(repoLink string) []*api.PayloadCommit
ToAPIPayloadCommits converts a PushCommits object to api.PayloadCommit format.
type PushUpdateOptions ¶
type PushUpdateOptions struct { PusherID int64 PusherName string RepoUserName string RepoName string RefFullName string OldCommitID string NewCommitID string }
PushUpdateOptions defines the push update options
type RawDiffType ¶
type RawDiffType string
RawDiffType type of a raw diff.
const ( RawDiffNormal RawDiffType = "diff" RawDiffPatch RawDiffType = "patch" )
RawDiffType possible values.
type Release ¶
type Release struct { ID int64 `xorm:"pk autoincr"` RepoID int64 `xorm:"INDEX UNIQUE(n)"` Repo *Repository `xorm:"-"` PublisherID int64 `xorm:"INDEX"` Publisher *User `xorm:"-"` TagName string `xorm:"INDEX UNIQUE(n)"` LowerTagName string Target string Title string Sha1 string `xorm:"VARCHAR(40)"` NumCommits int64 NumCommitsBehind int64 `xorm:"-"` Note string `xorm:"TEXT"` IsDraft bool `xorm:"NOT NULL DEFAULT false"` IsPrerelease bool Attachments []*Attachment `xorm:"-"` Created time.Time `xorm:"-"` CreatedUnix int64 `xorm:"INDEX"` }
Release represents a release of repository.
func GetRelease ¶
GetRelease returns release by given ID.
func GetReleaseByID ¶
GetReleaseByID returns release with given ID.
func GetReleasesByRepoID ¶
GetReleasesByRepoID returns a list of releases of repository.
func GetReleasesByRepoIDAndNames ¶ added in v1.1.0
GetReleasesByRepoIDAndNames returns a list of releases of repository according repoID and tagNames.
func (*Release) APIURL ¶ added in v1.1.0
APIURL the api url for a release. release must have attributes loaded
func (*Release) AfterSet ¶
AfterSet is invoked from XORM after setting the value of a field of this object.
func (*Release) BeforeInsert ¶
func (r *Release) BeforeInsert()
BeforeInsert is invoked from XORM before inserting an object of this type.
func (*Release) LoadAttributes ¶ added in v1.1.0
LoadAttributes load repo and publisher attributes for a realease
type RepoRedirect ¶ added in v1.1.0
type RepoRedirect struct { ID int64 `xorm:"pk autoincr"` OwnerID int64 `xorm:"UNIQUE(s)"` LowerName string `xorm:"UNIQUE(s) INDEX NOT NULL"` RedirectRepoID int64 // repoID to redirect to }
RepoRedirect represents that a repo name should be redirected to another
type RepoUnit ¶ added in v1.1.0
type RepoUnit struct { ID int64 RepoID int64 `xorm:"INDEX(s)"` Type UnitType `xorm:"INDEX(s)"` Index int Config core.Conversion `xorm:"TEXT"` CreatedUnix int64 `xorm:"INDEX CREATED"` Created time.Time `xorm:"-"` }
RepoUnit describes all units of a repository
func (*RepoUnit) AfterSet ¶ added in v1.1.0
AfterSet is invoked from XORM after setting the value of a field of this object.
func (*RepoUnit) BeforeSet ¶ added in v1.1.0
BeforeSet is invoked from XORM before setting the value of a field of this object.
func (*RepoUnit) CodeConfig ¶ added in v1.1.0
func (r *RepoUnit) CodeConfig() *UnitConfig
CodeConfig returns config for UnitTypeCode
func (*RepoUnit) CommitsConfig ¶ added in v1.1.0
func (r *RepoUnit) CommitsConfig() *UnitConfig
CommitsConfig returns config for UnitTypeCommits
func (*RepoUnit) ExternalTrackerConfig ¶ added in v1.1.0
func (r *RepoUnit) ExternalTrackerConfig() *ExternalTrackerConfig
ExternalTrackerConfig returns config for UnitTypeExternalTracker
func (*RepoUnit) ExternalWikiConfig ¶ added in v1.1.0
func (r *RepoUnit) ExternalWikiConfig() *ExternalWikiConfig
ExternalWikiConfig returns config for UnitTypeExternalWiki
func (*RepoUnit) IssuesConfig ¶ added in v1.1.0
func (r *RepoUnit) IssuesConfig() *UnitConfig
IssuesConfig returns config for UnitTypeIssues
func (*RepoUnit) PullRequestsConfig ¶ added in v1.1.0
func (r *RepoUnit) PullRequestsConfig() *UnitConfig
PullRequestsConfig returns config for UnitTypePullRequests
func (*RepoUnit) ReleasesConfig ¶ added in v1.1.0
func (r *RepoUnit) ReleasesConfig() *UnitConfig
ReleasesConfig returns config for UnitTypeReleases
type Repository ¶
type Repository struct { ID int64 `xorm:"pk autoincr"` OwnerID int64 `xorm:"UNIQUE(s)"` Owner *User `xorm:"-"` LowerName string `xorm:"UNIQUE(s) INDEX NOT NULL"` Name string `xorm:"INDEX NOT NULL"` Description string Website string DefaultBranch string NumWatches int NumStars int NumForks int NumIssues int NumClosedIssues int NumOpenIssues int `xorm:"-"` NumPulls int NumClosedPulls int NumOpenPulls int `xorm:"-"` NumMilestones int `xorm:"NOT NULL DEFAULT 0"` NumClosedMilestones int `xorm:"NOT NULL DEFAULT 0"` NumOpenMilestones int `xorm:"-"` NumTags int `xorm:"-"` IsPrivate bool `xorm:"INDEX"` IsBare bool `xorm:"INDEX"` IsMirror bool `xorm:"INDEX"` *Mirror `xorm:"-"` ExternalMetas map[string]string `xorm:"-"` Units []*RepoUnit `xorm:"-"` IsFork bool `xorm:"INDEX NOT NULL DEFAULT false"` ForkID int64 `xorm:"INDEX"` BaseRepo *Repository `xorm:"-"` Created time.Time `xorm:"-"` CreatedUnix int64 `xorm:"INDEX"` Updated time.Time `xorm:"-"` UpdatedUnix int64 `xorm:"INDEX"` }
Repository represents a git repository.
func CleanUpMigrateInfo ¶
func CleanUpMigrateInfo(repo *Repository) (*Repository, error)
CleanUpMigrateInfo finishes migrating repository and/or wiki with things that don't need to be done for mirrors.
func CreateRepository ¶
func CreateRepository(u *User, opts CreateRepoOptions) (_ *Repository, err error)
CreateRepository creates a repository for given user or organization.
func ForkRepository ¶
func ForkRepository(u *User, oldRepo *Repository, name, desc string) (_ *Repository, err error)
ForkRepository forks a repository
func GetRepositoriesByForkID ¶
func GetRepositoriesByForkID(forkID int64) ([]*Repository, error)
GetRepositoriesByForkID returns all repositories with given fork ID.
func GetRepositoryByID ¶
func GetRepositoryByID(id int64) (*Repository, error)
GetRepositoryByID returns the repository by given id if exists.
func GetRepositoryByName ¶
func GetRepositoryByName(ownerID int64, name string) (*Repository, error)
GetRepositoryByName returns the repository by given name under user if exists.
func GetRepositoryByRef ¶
func GetRepositoryByRef(ref string) (*Repository, error)
GetRepositoryByRef returns a Repository specified by a GFM reference. See https://help.github.com/articles/writing-on-github#references for more information on the syntax.
func GetStarredRepos ¶ added in v1.0.0
func GetStarredRepos(userID int64, private bool) ([]*Repository, error)
GetStarredRepos returns the repos starred by a particular user
func GetUserMirrorRepositories ¶
func GetUserMirrorRepositories(userID int64) ([]*Repository, error)
GetUserMirrorRepositories returns a list of mirror repositories of given user.
func GetUserRepositories ¶
func GetUserRepositories(userID int64, private bool, page, pageSize int, orderBy string) ([]*Repository, error)
GetUserRepositories returns a list of repositories of given user.
func GetWatchedRepos ¶ added in v1.1.0
func GetWatchedRepos(userID int64, private bool) ([]*Repository, error)
GetWatchedRepos returns the repos watched by a particular user
func HasForkedRepo ¶
func HasForkedRepo(ownerID, repoID int64) (*Repository, bool)
HasForkedRepo checks if given user has already forked a repository with given ID.
func MigrateRepository ¶
func MigrateRepository(u *User, opts MigrateRepoOptions) (*Repository, error)
MigrateRepository migrates a existing repository from other project hosting.
func (*Repository) APIFormat ¶
func (repo *Repository) APIFormat(mode AccessMode) *api.Repository
APIFormat converts a Repository to api.Repository
func (*Repository) APIURL ¶ added in v1.1.0
func (repo *Repository) APIURL() string
APIURL returns the repository API URL
func (*Repository) AddCollaborator ¶
func (repo *Repository) AddCollaborator(u *User) error
AddCollaborator adds new collaboration to a repository with default access mode.
func (*Repository) AddProtectedBranch ¶ added in v1.1.0
func (repo *Repository) AddProtectedBranch(branchName string, canPush bool) error
AddProtectedBranch add protection to branch
func (*Repository) AddWikiPage ¶
func (repo *Repository) AddWikiPage(doer *User, wikiPath, content, message string) error
AddWikiPage adds a new wiki page with a given wikiPath.
func (*Repository) AfterSet ¶
func (repo *Repository) AfterSet(colName string, _ xorm.Cell)
AfterSet is invoked from XORM after setting the value of a field of this object.
func (*Repository) AllowsPulls ¶
func (repo *Repository) AllowsPulls() bool
AllowsPulls returns true if repository meets the requirements of accepting pulls and has them enabled.
func (*Repository) BeforeInsert ¶
func (repo *Repository) BeforeInsert()
BeforeInsert is invoked from XORM before inserting an object of this type.
func (*Repository) BeforeUpdate ¶
func (repo *Repository) BeforeUpdate()
BeforeUpdate is invoked from XORM before updating this object.
func (*Repository) CanBeForked ¶
func (repo *Repository) CanBeForked() bool
CanBeForked returns true if repository meets the requirements of being forked.
func (*Repository) CanEnableEditor ¶
func (repo *Repository) CanEnableEditor() bool
CanEnableEditor returns true if repository meets the requirements of web editor.
func (*Repository) CanEnablePulls ¶
func (repo *Repository) CanEnablePulls() bool
CanEnablePulls returns true if repository meets the requirements of accepting pulls.
func (*Repository) ChangeCollaborationAccessMode ¶
func (repo *Repository) ChangeCollaborationAccessMode(uid int64, mode AccessMode) error
ChangeCollaborationAccessMode sets new access mode for the collaboration.
func (*Repository) ChangeProtectedBranch ¶ added in v1.1.0
func (repo *Repository) ChangeProtectedBranch(id int64, canPush bool) error
ChangeProtectedBranch access mode sets new access mode for the ProtectedBranch.
func (*Repository) CheckoutNewBranch ¶
func (repo *Repository) CheckoutNewBranch(oldBranch, newBranch string) error
CheckoutNewBranch checks out a new branch
func (*Repository) CloneLink ¶
func (repo *Repository) CloneLink() (cl *CloneLink)
CloneLink returns clone URLs of repository.
func (*Repository) ComposeCompareURL ¶
func (repo *Repository) ComposeCompareURL(oldCommitID, newCommitID string) string
ComposeCompareURL returns the repository comparison URL
func (*Repository) ComposeMetas ¶
func (repo *Repository) ComposeMetas() map[string]string
ComposeMetas composes a map of metas for rendering external issue tracker URL.
func (*Repository) CreateNewBranch ¶
func (repo *Repository) CreateNewBranch(doer *User, oldBranchName, branchName string) (err error)
CreateNewBranch creates a new repository branch
func (*Repository) DeleteCollaboration ¶
func (repo *Repository) DeleteCollaboration(uid int64) (err error)
DeleteCollaboration removes collaboration relation between the user and repository.
func (*Repository) DeleteProtectedBranch ¶ added in v1.1.0
func (repo *Repository) DeleteProtectedBranch(id int64) (err error)
DeleteProtectedBranch removes ProtectedBranch relation between the user and repository.
func (*Repository) DeleteRepoFile ¶
func (repo *Repository) DeleteRepoFile(doer *User, opts DeleteRepoFileOptions) (err error)
DeleteRepoFile deletes a repository file
func (*Repository) DeleteWiki ¶
func (repo *Repository) DeleteWiki() error
DeleteWiki removes the actual and local copy of repository wiki.
func (*Repository) DeleteWikiPage ¶
func (repo *Repository) DeleteWikiPage(doer *User, wikiPath string) (err error)
DeleteWikiPage deletes a wiki page identified by its wikiPath.
func (*Repository) DescriptionHTML ¶ added in v1.0.0
func (repo *Repository) DescriptionHTML() template.HTML
DescriptionHTML does special handles to description and return HTML string.
func (*Repository) DiscardLocalRepoBranchChanges ¶
func (repo *Repository) DiscardLocalRepoBranchChanges(branch string) error
DiscardLocalRepoBranchChanges discards the local repository branch changes
func (*Repository) EditWikiPage ¶
func (repo *Repository) EditWikiPage(doer *User, oldWikiPath, wikiPath, content, message string) error
EditWikiPage updates a wiki page identified by its wikiPath, optionally also changing wikiPath.
func (*Repository) EnableUnit ¶ added in v1.1.0
func (repo *Repository) EnableUnit(tp UnitType) bool
EnableUnit if this repository enabled some unit
func (*Repository) FullName ¶
func (repo *Repository) FullName() string
FullName returns the repository full name
func (*Repository) GetAssigneeByID ¶
func (repo *Repository) GetAssigneeByID(userID int64) (*User, error)
GetAssigneeByID returns the user that has write access of repository by given ID.
func (*Repository) GetAssignees ¶
func (repo *Repository) GetAssignees() (_ []*User, err error)
GetAssignees returns all users that have write access and can be assigned to issues of the repository,
func (*Repository) GetBaseRepo ¶
func (repo *Repository) GetBaseRepo() (err error)
GetBaseRepo returns the base repository
func (*Repository) GetBranch ¶
func (repo *Repository) GetBranch(branch string) (*Branch, error)
GetBranch returns a branch by it's name
func (*Repository) GetBranches ¶
func (repo *Repository) GetBranches() ([]*Branch, error)
GetBranches returns all the branches of a repository
func (*Repository) GetCollaborators ¶
func (repo *Repository) GetCollaborators() ([]*Collaborator, error)
GetCollaborators returns the collaborators for a repository
func (*Repository) GetDiffPreview ¶
func (repo *Repository) GetDiffPreview(branch, treePath, content string) (diff *Diff, err error)
GetDiffPreview produces and returns diff result of a file which is not yet committed.
func (*Repository) GetForks ¶
func (repo *Repository) GetForks() ([]*Repository, error)
GetForks returns all the forks of the repository
func (*Repository) GetMilestoneByID ¶
func (repo *Repository) GetMilestoneByID(milestoneID int64) (*Milestone, error)
GetMilestoneByID returns the milestone belongs to repository by given ID.
func (*Repository) GetMirror ¶
func (repo *Repository) GetMirror() (err error)
GetMirror sets the repository mirror, returns an error upon failure
func (*Repository) GetOwner ¶
func (repo *Repository) GetOwner() error
GetOwner returns the repository owner
func (*Repository) GetProtectedBranches ¶ added in v1.1.0
func (repo *Repository) GetProtectedBranches() ([]*ProtectedBranch, error)
GetProtectedBranches get all protected btanches
func (*Repository) GetStargazers ¶
func (repo *Repository) GetStargazers(page int) ([]*User, error)
GetStargazers returns the users that starred the repo.
func (*Repository) GetUnit ¶ added in v1.1.0
func (repo *Repository) GetUnit(tp UnitType) (*RepoUnit, error)
GetUnit returns a RepoUnit object
func (*Repository) GetUserFork ¶ added in v1.1.0
func (repo *Repository) GetUserFork(userID int64) (*Repository, error)
GetUserFork return user forked repository from this repository, if not forked return nil
func (*Repository) GetWatchers ¶
func (repo *Repository) GetWatchers(page int) ([]*User, error)
GetWatchers returns range of users watching given repository.
func (*Repository) GitConfigPath ¶
func (repo *Repository) GitConfigPath() string
GitConfigPath returns the repository git config path
func (*Repository) HTMLURL ¶
func (repo *Repository) HTMLURL() string
HTMLURL returns the repository HTML URL
func (*Repository) HasAccess ¶
func (repo *Repository) HasAccess(u *User) bool
HasAccess returns true when user has access to this repository
func (*Repository) HasWiki ¶
func (repo *Repository) HasWiki() bool
HasWiki returns true if repository has wiki.
func (*Repository) InitWiki ¶
func (repo *Repository) InitWiki() error
InitWiki initializes a wiki for repository, it does nothing when repository already has wiki.
func (*Repository) IsCollaborator ¶ added in v1.1.0
func (repo *Repository) IsCollaborator(userID int64) (bool, error)
IsCollaborator check if a user is a collaborator of a repository
func (*Repository) IsOwnedBy ¶
func (repo *Repository) IsOwnedBy(userID int64) bool
IsOwnedBy returns true when user owns this repository
func (*Repository) IssueStats ¶
IssueStats returns number of open and closed repository issues by given filter mode.
func (*Repository) LocalCopyPath ¶
func (repo *Repository) LocalCopyPath() string
LocalCopyPath returns the local repository copy path
func (*Repository) LocalWikiPath ¶
func (repo *Repository) LocalWikiPath() string
LocalWikiPath returns the path to the local wiki repository (?).
func (*Repository) MustGetUnit ¶ added in v1.1.0
func (repo *Repository) MustGetUnit(tp UnitType) *RepoUnit
MustGetUnit always returns a RepoUnit object
func (*Repository) MustOwner ¶
func (repo *Repository) MustOwner() *User
MustOwner always returns a valid *User object to avoid conceptually impossible error handling. It creates a fake object that contains error details when error occurs.
func (*Repository) NextIssueIndex ¶
func (repo *Repository) NextIssueIndex() int64
NextIssueIndex returns the next issue index FIXME: should have a mutex to prevent producing same index for two issues that are created closely enough.
func (*Repository) PatchPath ¶
func (repo *Repository) PatchPath(index int64) (string, error)
PatchPath returns corresponding patch file path of repository by given issue ID.
func (*Repository) RecalculateAccesses ¶
func (repo *Repository) RecalculateAccesses() error
RecalculateAccesses recalculates all accesses for repository.
func (*Repository) RelLink ¶
func (repo *Repository) RelLink() string
RelLink returns the repository relative link
func (*Repository) RepoPath ¶
func (repo *Repository) RepoPath() string
RepoPath returns the repository path
func (*Repository) SavePatch ¶
func (repo *Repository) SavePatch(index int64, patch []byte) error
SavePatch saves patch data to corresponding location by given issue ID.
func (*Repository) UpdateDefaultBranch ¶ added in v1.1.0
func (repo *Repository) UpdateDefaultBranch() error
UpdateDefaultBranch updates the default branch
func (*Repository) UpdateLocalCopyBranch ¶
func (repo *Repository) UpdateLocalCopyBranch(branch string) error
UpdateLocalCopyBranch makes sure local copy of repository in given branch is up-to-date.
func (*Repository) UpdateLocalWiki ¶
func (repo *Repository) UpdateLocalWiki() error
UpdateLocalWiki makes sure the local copy of repository wiki is up-to-date.
func (*Repository) UpdateRepoFile ¶
func (repo *Repository) UpdateRepoFile(doer *User, opts UpdateRepoFileOptions) (err error)
UpdateRepoFile adds or updates a file in repository.
func (*Repository) UploadRepoFiles ¶
func (repo *Repository) UploadRepoFiles(doer *User, opts UploadRepoFileOptions) (err error)
UploadRepoFiles uploads files to a repository
func (*Repository) WikiCloneLink ¶
func (repo *Repository) WikiCloneLink() *CloneLink
WikiCloneLink returns clone URLs of repository wiki.
func (*Repository) WikiPath ¶
func (repo *Repository) WikiPath() string
WikiPath returns wiki data path for given repository.
type RepositoryList ¶
type RepositoryList []*Repository
RepositoryList contains a list of repositories
func GetRecentUpdatedRepositories ¶
func GetRecentUpdatedRepositories(opts *SearchRepoOptions) (repos RepositoryList, _ int64, _ error)
GetRecentUpdatedRepositories returns the list of repositories that are recently updated.
func Repositories ¶
func Repositories(opts *SearchRepoOptions) (_ RepositoryList, count int64, err error)
Repositories returns all repositories
func SearchRepositoryByName ¶
func SearchRepositoryByName(opts *SearchRepoOptions) (repos RepositoryList, count int64, err error)
SearchRepositoryByName takes keyword and part of repository name to search, it returns results in given range and number of total results.
func (RepositoryList) LoadAttributes ¶
func (repos RepositoryList) LoadAttributes() error
LoadAttributes loads the attributes for the given RepositoryList
type SMTPConfig ¶
type SMTPConfig struct { Auth string Host string Port int AllowedDomains string `xorm:"TEXT"` TLS bool SkipVerify bool }
SMTPConfig holds configuration for the SMTP login source.
func (*SMTPConfig) FromDB ¶
func (cfg *SMTPConfig) FromDB(bs []byte) error
FromDB fills up an SMTPConfig from serialized format.
func (*SMTPConfig) ToDB ¶
func (cfg *SMTPConfig) ToDB() ([]byte, error)
ToDB exports an SMTPConfig to a serialized format.
type SearchRepoOptions ¶
type SearchRepoOptions struct { Keyword string OwnerID int64 Searcher *User //ID of the person who's seeking OrderBy string Private bool // Include private repositories in results Starred bool Page int IsProfile bool PageSize int // Can be smaller than or equal to setting.ExplorePagingNum }
SearchRepoOptions holds the search options
type SearchUserOptions ¶
type SearchUserOptions struct { Keyword string Type UserType OrderBy string Page int PageSize int // Can be smaller than or equal to setting.UI.ExplorePagingNum }
SearchUserOptions contains the options for searching
type SlackAttachment ¶
type SlackAttachment struct { Fallback string `json:"fallback"` Color string `json:"color"` Title string `json:"title"` Text string `json:"text"` }
SlackAttachment contains the slack message
type SlackMeta ¶
type SlackMeta struct { Channel string `json:"channel"` Username string `json:"username"` IconURL string `json:"icon_url"` Color string `json:"color"` }
SlackMeta contains the slack metadata
type SlackPayload ¶
type SlackPayload struct { Channel string `json:"channel"` Text string `json:"text"` Username string `json:"username"` IconURL string `json:"icon_url"` UnfurlLinks int `json:"unfurl_links"` LinkNames int `json:"link_names"` Attachments []SlackAttachment `json:"attachments"` }
SlackPayload contains the information about the slack channel
func GetSlackPayload ¶
func GetSlackPayload(p api.Payloader, event HookEventType, meta string) (*SlackPayload, error)
GetSlackPayload converts a slack webhook into a SlackPayload
func (*SlackPayload) JSONPayload ¶
func (p *SlackPayload) JSONPayload() ([]byte, error)
JSONPayload Marshals the SlackPayload to json
func (*SlackPayload) SetSecret ¶
func (p *SlackPayload) SetSecret(_ string)
SetSecret sets the slack secret
type Star ¶
type Star struct { ID int64 `xorm:"pk autoincr"` UID int64 `xorm:"UNIQUE(s)"` RepoID int64 `xorm:"UNIQUE(s)"` }
Star represents a starred repo by an user.
type Statistic ¶
type Statistic struct { Counter struct { User, Org, PublicKey, Repo, Watch, Star, Action, Access, Issue, Comment, Oauth, Follow, Mirror, Release, LoginSource, Webhook, Milestone, Label, HookTask, Team, UpdateTask, Attachment int64 } }
Statistic contains the database statistics
func GetStatistic ¶
func GetStatistic() (stats Statistic)
GetStatistic returns the database statistics
type Team ¶
type Team struct { ID int64 `xorm:"pk autoincr"` OrgID int64 `xorm:"INDEX"` LowerName string Name string Description string Authorize AccessMode Repos []*Repository `xorm:"-"` Members []*User `xorm:"-"` NumRepos int NumMembers int }
Team represents a organization team.
func GetTeamByID ¶
GetTeamByID returns team by given ID.
func GetUserTeams ¶
GetUserTeams returns all teams that user belongs to in given organization.
func (*Team) AddMember ¶
AddMember adds new membership of the team to the organization, the user will have membership to the organization automatically when needed.
func (*Team) AddRepository ¶
func (t *Team) AddRepository(repo *Repository) (err error)
AddRepository adds new repository to team of organization.
func (*Team) GetMembers ¶
GetMembers returns all members in team of organization.
func (*Team) GetRepositories ¶
GetRepositories returns all repositories in team of organization.
func (*Team) HasRepository ¶
HasRepository returns true if given repository belong to team.
func (*Team) IsOwnerTeam ¶
IsOwnerTeam returns true if team is owner team.
func (*Team) RemoveMember ¶
RemoveMember removes member from team of organization.
func (*Team) RemoveRepository ¶
RemoveRepository removes repository from team of organization.
type TeamRepo ¶
type TeamRepo struct { ID int64 `xorm:"pk autoincr"` OrgID int64 `xorm:"INDEX"` TeamID int64 `xorm:"UNIQUE(s)"` RepoID int64 `xorm:"UNIQUE(s)"` }
TeamRepo represents an team-repository relation.
type TeamUser ¶
type TeamUser struct { ID int64 `xorm:"pk autoincr"` OrgID int64 `xorm:"INDEX"` TeamID int64 `xorm:"UNIQUE(s)"` UID int64 `xorm:"UNIQUE(s)"` }
TeamUser represents an team-user relation.
type TwoFactor ¶ added in v1.1.0
type TwoFactor struct { ID int64 `xorm:"pk autoincr"` UID int64 `xorm:"UNIQUE"` Secret string ScratchToken string Created time.Time `xorm:"-"` CreatedUnix int64 `xorm:"INDEX"` Updated time.Time `xorm:"-"` // Note: Updated must below Created for AfterSet. UpdatedUnix int64 `xorm:"INDEX"` }
TwoFactor represents a two-factor authentication token.
func GetTwoFactorByUID ¶ added in v1.1.0
GetTwoFactorByUID returns the two-factor authentication token associated with the user, if any.
func (*TwoFactor) AfterSet ¶ added in v1.1.0
AfterSet is invoked from XORM after setting the value of a field of this object.
func (*TwoFactor) BeforeInsert ¶ added in v1.1.0
func (t *TwoFactor) BeforeInsert()
BeforeInsert will be invoked by XORM before inserting a record representing this object.
func (*TwoFactor) BeforeUpdate ¶ added in v1.1.0
func (t *TwoFactor) BeforeUpdate()
BeforeUpdate is invoked from XORM before updating this object.
func (*TwoFactor) GenerateScratchToken ¶ added in v1.1.0
GenerateScratchToken recreates the scratch token the user is using.
func (*TwoFactor) ValidateTOTP ¶ added in v1.1.0
ValidateTOTP validates the provided passcode.
func (*TwoFactor) VerifyScratchToken ¶ added in v1.1.0
VerifyScratchToken verifies if the specified scratch token is valid.
type UnitConfig ¶ added in v1.1.0
type UnitConfig struct { }
UnitConfig describes common unit config
func (*UnitConfig) FromDB ¶ added in v1.1.0
func (cfg *UnitConfig) FromDB(bs []byte) error
FromDB fills up a UnitConfig from serialized format.
func (*UnitConfig) ToDB ¶ added in v1.1.0
func (cfg *UnitConfig) ToDB() ([]byte, error)
ToDB exports a UnitConfig to a serialized format.
type UnitType ¶ added in v1.1.0
type UnitType int
UnitType is Unit's Type
const ( UnitTypeCode UnitType = iota + 1 // 1 code UnitTypeIssues // 2 issues UnitTypePullRequests // 3 PRs UnitTypeCommits // 4 Commits UnitTypeReleases // 5 Releases UnitTypeWiki // 6 Wiki UnitTypeSettings // 7 Settings UnitTypeExternalWiki // 8 ExternalWiki UnitTypeExternalTracker // 9 ExternalTracker )
Enumerate all the unit types
type UpdateRepoFileOptions ¶
type UpdateRepoFileOptions struct { LastCommitID string OldBranch string NewBranch string OldTreeName string NewTreeName string Message string Content string IsNewFile bool }
UpdateRepoFileOptions holds the repository file update options
type Upload ¶
Upload represent a uploaded file to a repo to be deleted when moved
func GetUploadByUUID ¶
GetUploadByUUID returns the Upload by UUID
func GetUploadsByUUIDs ¶
GetUploadsByUUIDs returns multiple uploads by UUIDS
type UploadRepoFileOptions ¶
type UploadRepoFileOptions struct { LastCommitID string OldBranch string NewBranch string TreePath string Message string Files []string // In UUID format. }
UploadRepoFileOptions contains the uploaded repository file options
type User ¶
type User struct { ID int64 `xorm:"pk autoincr"` LowerName string `xorm:"UNIQUE NOT NULL"` Name string `xorm:"UNIQUE NOT NULL"` FullName string // Email is the primary email address (to be used for communication) Email string `xorm:"NOT NULL"` KeepEmailPrivate bool Passwd string `xorm:"NOT NULL"` LoginType LoginType LoginSource int64 `xorm:"NOT NULL DEFAULT 0"` LoginName string Type UserType OwnedOrgs []*User `xorm:"-"` Orgs []*User `xorm:"-"` Repos []*Repository `xorm:"-"` Location string Website string Rands string `xorm:"VARCHAR(10)"` Salt string `xorm:"VARCHAR(10)"` Created time.Time `xorm:"-"` CreatedUnix int64 `xorm:"INDEX"` Updated time.Time `xorm:"-"` UpdatedUnix int64 `xorm:"INDEX"` LastLogin time.Time `xorm:"-"` LastLoginUnix int64 `xorm:"INDEX"` // Remember visibility choice for convenience, true for private LastRepoVisibility bool // Maximum repository creation limit, -1 means use global default MaxRepoCreation int `xorm:"NOT NULL DEFAULT -1"` // Permissions IsActive bool `xorm:"INDEX"` // Activate primary email IsAdmin bool AllowGitHook bool AllowImportLocal bool // Allow migrate repository by local path AllowCreateOrganization bool `xorm:"DEFAULT true"` ProhibitLogin bool // Avatar Avatar string `xorm:"VARCHAR(2048) NOT NULL"` AvatarEmail string `xorm:"NOT NULL"` UseCustomAvatar bool // Counters NumFollowers int NumFollowing int `xorm:"NOT NULL DEFAULT 0"` NumStars int NumRepos int // For organization Description string NumTeams int NumMembers int Teams []*Team `xorm:"-"` Members []*User `xorm:"-"` // Preferences DiffViewStyle string `xorm:"NOT NULL DEFAULT ''"` }
User represents the object of individual and member of organization.
func ExternalUserLogin ¶
func ExternalUserLogin(user *User, login, password string, source *LoginSource, autoRegister bool) (*User, error)
ExternalUserLogin attempts a login using external source types.
func GetAssigneeByID ¶
func GetAssigneeByID(repo *Repository, userID int64) (*User, error)
GetAssigneeByID returns the user with write access of repository by given ID.
func GetOrgByName ¶
GetOrgByName returns organization by given name.
func GetOrgsByUserID ¶
GetOrgsByUserID returns a list of organizations that the given user ID has joined.
func GetOwnedOrgsByUserID ¶
GetOwnedOrgsByUserID returns a list of organizations are owned by given user ID.
func GetOwnedOrgsByUserIDDesc ¶
GetOwnedOrgsByUserIDDesc returns a list of organizations are owned by given user ID, ordered descending by the given condition.
func GetTeamMembers ¶
GetTeamMembers returns all members in given team of organization.
func GetUserByEmail ¶
GetUserByEmail returns the user object by given e-mail if exists.
func GetUserByID ¶
GetUserByID returns the user object by given ID if exists.
func GetUserByKeyID ¶
GetUserByKeyID get user information by user's public key id
func GetUserByName ¶
GetUserByName returns user by given name.
func GetUsersByIDs ¶ added in v1.0.0
GetUsersByIDs returns all resolved users from a list of Ids.
func LoginViaLDAP ¶
func LoginViaLDAP(user *User, login, password string, source *LoginSource, autoRegister bool) (*User, error)
LoginViaLDAP queries if login/password is valid against the LDAP directory pool, and create a local user if success when enabled.
func LoginViaPAM ¶
func LoginViaPAM(user *User, login, password string, sourceID int64, cfg *PAMConfig, autoRegister bool) (*User, error)
LoginViaPAM queries if login/password is valid against the PAM, and create a local user if success when enabled.
func LoginViaSMTP ¶
func LoginViaSMTP(user *User, login, password string, sourceID int64, cfg *SMTPConfig, autoRegister bool) (*User, error)
LoginViaSMTP queries if login/password is valid against the SMTP, and create a local user if success when enabled.
func NewGhostUser ¶
func NewGhostUser() *User
NewGhostUser creates and returns a fake user for someone has deleted his/her account.
func Organizations ¶
func Organizations(opts *SearchUserOptions) ([]*User, error)
Organizations returns number of organizations in given page.
func SearchUserByName ¶
func SearchUserByName(opts *SearchUserOptions) (users []*User, _ int64, _ error)
SearchUserByName takes keyword and part of user name to search, it returns results in given range and number of total results.
func UserSignIn ¶
UserSignIn validates user name and password.
func Users ¶
func Users(opts *SearchUserOptions) ([]*User, error)
Users returns number of users in given page.
func ValidateCommitWithEmail ¶
ValidateCommitWithEmail check if author's e-mail of commit is corresponding to a user.
func VerifyUserActiveCode ¶
VerifyUserActiveCode verifies active code when active account
func (*User) AccessibleReposEnv ¶ added in v1.1.0
func (org *User) AccessibleReposEnv(userID int64) (AccessibleReposEnvironment, error)
AccessibleReposEnv an AccessibleReposEnvironment for the repositories in `org` that are accessible to the specified user.
func (*User) AfterSet ¶
AfterSet is invoked from XORM after setting the value of a field of this object.
func (*User) AvatarLink ¶
AvatarLink returns user avatar absolute link.
func (*User) BeforeInsert ¶
func (u *User) BeforeInsert()
BeforeInsert is invoked from XORM before inserting an object of this type.
func (*User) BeforeUpdate ¶
func (u *User) BeforeUpdate()
BeforeUpdate is invoked from XORM before updating this object.
func (*User) CanCreateOrganization ¶ added in v1.1.0
CanCreateOrganization returns true if user can create organisation.
func (*User) CanCreateRepo ¶
CanCreateRepo returns if user login can create a repository
func (*User) CanEditGitHook ¶
CanEditGitHook returns true if user can edit Git hooks.
func (*User) CanImportLocal ¶
CanImportLocal returns true if user can migrate repository by local path.
func (*User) CustomAvatarPath ¶
CustomAvatarPath returns user custom avatar file path.
func (*User) DashboardLink ¶
DashboardLink returns the user dashboard page link.
func (*User) DeleteAvatar ¶
DeleteAvatar deletes the user's custom avatar.
func (*User) DisplayName ¶
DisplayName returns full name if it's not empty, returns username otherwise.
func (*User) EncodePasswd ¶
func (u *User) EncodePasswd()
EncodePasswd encodes password to safe format.
func (*User) GenerateActivateCode ¶
GenerateActivateCode generates an activate code based on user information.
func (*User) GenerateEmailActivateCode ¶
GenerateEmailActivateCode generates an activate code based on user information and given e-mail.
func (*User) GenerateRandomAvatar ¶
GenerateRandomAvatar generates a random avatar for user.
func (*User) GetAccessRepoIDs ¶ added in v1.1.0
GetAccessRepoIDs returns all repsitories IDs where user's or user is a team member orgnizations
func (*User) GetAccessibleRepositories ¶
func (user *User) GetAccessibleRepositories(limit int) (repos []*Repository, _ error)
GetAccessibleRepositories finds repositories which the user has access but does not own. If limit is smaller than 1 means returns all found results.
func (*User) GetFollowers ¶
GetFollowers returns range of user's followers.
func (*User) GetFollowing ¶
GetFollowing returns range of user's following.
func (*User) GetMembers ¶
GetMembers returns all members of organization.
func (*User) GetMirrorRepositories ¶
func (u *User) GetMirrorRepositories() ([]*Repository, error)
GetMirrorRepositories returns mirror repositories that user owns, including private repositories.
func (*User) GetOrgRepositoryIDs ¶ added in v1.1.0
GetOrgRepositoryIDs returns repositories IDs where user's team owned
func (*User) GetOrganizationCount ¶
GetOrganizationCount returns count of membership of organization of user.
func (*User) GetOrganizations ¶
GetOrganizations returns all organizations that user belongs to.
func (*User) GetOwnedOrganizations ¶
GetOwnedOrganizations returns all organizations that user owns.
func (*User) GetOwnerTeam ¶
GetOwnerTeam returns owner team of organization.
func (*User) GetRepositories ¶
GetRepositories returns repositories that user owns, including private repositories.
func (*User) GetRepositoryAccesses ¶
func (user *User) GetRepositoryAccesses() (map[*Repository]AccessMode, error)
GetRepositoryAccesses finds all repositories with their access mode where a user has access but does not own.
func (*User) GetRepositoryIDs ¶ added in v1.1.0
GetRepositoryIDs returns repositories IDs where user owned
func (*User) GetStarredRepoCount ¶ added in v1.1.0
GetStarredRepoCount returns the numbers of repo the user starred.
func (*User) GetStarredRepos ¶ added in v1.1.0
func (u *User) GetStarredRepos(private bool, page, pageSize int, orderBy string) (repos RepositoryList, err error)
GetStarredRepos returns the repos the user starred.
func (*User) GetUserTeamIDs ¶
GetUserTeamIDs returns of all team IDs of the organization that user is member of.
func (*User) GetUserTeams ¶
GetUserTeams returns all teams that belong to user, and that the user has joined.
func (*User) HasForkedRepo ¶
HasForkedRepo checks if user has already forked a repository with given ID.
func (*User) IsAdminOfRepo ¶
func (u *User) IsAdminOfRepo(repo *Repository) bool
IsAdminOfRepo returns true if user has admin or higher access of repository.
func (*User) IsFollowing ¶
IsFollowing returns true if user is following followID.
func (*User) IsMailable ¶ added in v1.1.0
IsMailable checks if a user is elegible to receive emails.
func (*User) IsOrgMember ¶
IsOrgMember returns true if given user is member of organization.
func (*User) IsOrganization ¶
IsOrganization returns true if user is actually a organization.
func (*User) IsPasswordSet ¶ added in v1.1.0
IsPasswordSet checks if the password is set or left empty
func (*User) IsPublicMember ¶
IsPublicMember returns true if user public his/her membership in given organization.
func (*User) IsUserOrgOwner ¶
IsUserOrgOwner returns true if user is in the owner team of given organization.
func (*User) IsWriterOfRepo ¶
func (u *User) IsWriterOfRepo(repo *Repository) bool
IsWriterOfRepo returns true if user has write access to given repository.
func (*User) RelAvatarLink ¶
RelAvatarLink returns relative avatar link to the site domain, which includes app sub-url as prefix. However, it is possible to return full URL if user enables Gravatar-like service.
func (*User) RemoveMember ¶
RemoveMember removes member from organization.
func (*User) RemoveOrgRepo ¶
RemoveOrgRepo removes all team-repository relations of organization.
func (*User) RepoCreationNum ¶
RepoCreationNum returns the number of repositories created by the user
func (*User) SetLastLogin ¶ added in v1.0.0
func (u *User) SetLastLogin()
SetLastLogin set time to last login
func (*User) UpdateDiffViewStyle ¶ added in v1.0.0
UpdateDiffViewStyle updates the users diff view style
func (*User) UploadAvatar ¶
UploadAvatar saves custom avatar for user. FIXME: split uploads to different subdirs in case we have massive users.
func (*User) ValidatePassword ¶
ValidatePassword checks if given password matches the one belongs to the user.
type UserCommit ¶
UserCommit represents a commit with validation of user.
type Watch ¶
type Watch struct { ID int64 `xorm:"pk autoincr"` UserID int64 `xorm:"UNIQUE(watch)"` RepoID int64 `xorm:"UNIQUE(watch)"` }
Watch is connection request for receiving repository notification.
func GetWatchers ¶
GetWatchers returns all watchers of given repository.
type Webhook ¶
type Webhook struct { ID int64 `xorm:"pk autoincr"` RepoID int64 `xorm:"INDEX"` OrgID int64 `xorm:"INDEX"` URL string `xorm:"url TEXT"` ContentType HookContentType Secret string `xorm:"TEXT"` Events string `xorm:"TEXT"` *HookEvent `xorm:"-"` IsSSL bool `xorm:"is_ssl"` IsActive bool `xorm:"INDEX"` HookTaskType HookTaskType Meta string `xorm:"TEXT"` // store hook-specific attributes LastStatus HookStatus // Last delivery status Created time.Time `xorm:"-"` CreatedUnix int64 `xorm:"INDEX"` Updated time.Time `xorm:"-"` UpdatedUnix int64 `xorm:"INDEX"` }
Webhook represents a web hook object.
func GetActiveWebhooksByOrgID ¶
GetActiveWebhooksByOrgID returns all active webhooks for an organization.
func GetActiveWebhooksByRepoID ¶
GetActiveWebhooksByRepoID returns all active webhooks of repository.
func GetWebhookByOrgID ¶
GetWebhookByOrgID returns webhook of organization by given ID.
func GetWebhookByRepoID ¶
GetWebhookByRepoID returns webhook of repository by given ID.
func GetWebhooksByOrgID ¶
GetWebhooksByOrgID returns all webhooks for an organization.
func GetWebhooksByRepoID ¶
GetWebhooksByRepoID returns all webhooks of a repository.
func (*Webhook) BeforeInsert ¶
func (w *Webhook) BeforeInsert()
BeforeInsert will be invoked by XORM before inserting a record representing this object
func (*Webhook) BeforeUpdate ¶
func (w *Webhook) BeforeUpdate()
BeforeUpdate will be invoked by XORM before updating a record representing this object
func (*Webhook) EventsArray ¶
EventsArray returns an array of hook events
func (*Webhook) GetSlackHook ¶
GetSlackHook returns slack metadata
func (*Webhook) HasCreateEvent ¶
HasCreateEvent returns true if hook enabled create event.
func (*Webhook) HasPullRequestEvent ¶
HasPullRequestEvent returns true if hook enabled pull request event.
func (*Webhook) HasPushEvent ¶
HasPushEvent returns true if hook enabled push event.
func (*Webhook) UpdateEvent ¶
UpdateEvent handles conversion from HookEvent to Events.
Source Files ¶
- access.go
- action.go
- admin.go
- attachment.go
- branches.go
- error.go
- external_login_user.go
- git_diff.go
- graph.go
- helper.go
- issue.go
- issue_comment.go
- issue_indexer.go
- issue_label.go
- issue_list.go
- issue_mail.go
- issue_milestone.go
- issue_user.go
- lfs.go
- login_source.go
- mail.go
- models.go
- notification.go
- org.go
- org_team.go
- pull.go
- release.go
- repo.go
- repo_branch.go
- repo_collaboration.go
- repo_editor.go
- repo_list.go
- repo_mirror.go
- repo_redirect.go
- repo_unit.go
- repo_watch.go
- ssh_key.go
- star.go
- token.go
- twofactor.go
- unit.go
- update.go
- user.go
- user_mail.go
- webhook.go
- webhook_slack.go
- wiki.go