Documentation ¶
Index ¶
- func AddAssigneeIfNotAssigned(ctx context.Context, issue *issues_model.Issue, doer *user_model.User, ...) (comment *issues_model.Comment, err error)
- func AddLabel(ctx context.Context, issue *issues_model.Issue, doer *user_model.User, ...) error
- func AddLabels(ctx context.Context, issue *issues_model.Issue, doer *user_model.User, ...) error
- func CanDoerChangeReviewRequests(ctx context.Context, doer *user_model.User, repo *repo_model.Repository, ...) bool
- func ChangeContent(ctx context.Context, issue *issues_model.Issue, doer *user_model.User, ...) error
- func ChangeIssueRef(ctx context.Context, issue *issues_model.Issue, doer *user_model.User, ...) error
- func ChangeMilestoneAssign(ctx context.Context, issue *issues_model.Issue, doer *user_model.User, ...) (err error)
- func ChangeStatus(ctx context.Context, issue *issues_model.Issue, doer *user_model.User, ...) error
- func ChangeTimeEstimate(ctx context.Context, issue *issues_model.Issue, doer *user_model.User, ...) (err error)
- func ChangeTitle(ctx context.Context, issue *issues_model.Issue, doer *user_model.User, ...) error
- func ClearLabels(ctx context.Context, issue *issues_model.Issue, doer *user_model.User) error
- func CreateCommentReaction(ctx context.Context, doer *user_model.User, comment *issues_model.Comment, ...) (*issues_model.Reaction, error)
- func CreateIssueComment(ctx context.Context, doer *user_model.User, repo *repo_model.Repository, ...) (*issues_model.Comment, error)
- func CreateIssueReaction(ctx context.Context, doer *user_model.User, issue *issues_model.Issue, ...) (*issues_model.Reaction, error)
- func CreateRefComment(ctx context.Context, doer *user_model.User, repo *repo_model.Repository, ...) error
- func DeleteComment(ctx context.Context, doer *user_model.User, comment *issues_model.Comment) error
- func DeleteIssue(ctx context.Context, doer *user_model.User, gitRepo *git.Repository, ...) error
- func DeleteNotPassedAssignee(ctx context.Context, issue *issues_model.Issue, doer *user_model.User, ...) (err error)
- func GetDefaultTemplateConfig() api.IssueConfig
- func GetRefEndNamesAndURLs(issues []*issues_model.Issue, repoLink string) (map[int64]string, map[int64]string)
- func GetTemplateConfig(gitRepo *git.Repository, path string, commit *git.Commit) (api.IssueConfig, error)
- func GetTemplateConfigFromDefaultBranch(repo *repo.Repository, gitRepo *git.Repository) (api.IssueConfig, error)
- func HasTemplatesOrContactLinks(repo *repo.Repository, gitRepo *git.Repository) bool
- func IsTemplateConfig(path string) bool
- func NewIssue(ctx context.Context, repo *repo_model.Repository, issue *issues_model.Issue, ...) error
- func ParseTemplatesFromDefaultBranch(repo *repo.Repository, gitRepo *git.Repository) (ret struct{ ... })
- func RemoveLabel(ctx context.Context, issue *issues_model.Issue, doer *user_model.User, ...) error
- func ReplaceLabels(ctx context.Context, issue *issues_model.Issue, doer *user_model.User, ...) error
- func ReviewRequest(ctx context.Context, issue *issues_model.Issue, doer *user_model.User, ...) (comment *issues_model.Comment, err error)
- func ReviewRequestNotify(ctx context.Context, issue *issues_model.Issue, doer *user_model.User, ...)
- func TeamReviewRequest(ctx context.Context, issue *issues_model.Issue, doer *user_model.User, ...) (comment *issues_model.Comment, err error)
- func ToggleAssigneeWithNotify(ctx context.Context, issue *issues_model.Issue, doer *user_model.User, ...) (removed bool, comment *issues_model.Comment, err error)
- func UpdateAssignees(ctx context.Context, issue *issues_model.Issue, oneAssignee string, ...) (err error)
- func UpdateComment(ctx context.Context, c *issues_model.Comment, contentVersion int, ...) error
- func UpdateIssuesCommit(ctx context.Context, doer *user_model.User, repo *repo_model.Repository, ...) error
- type ReviewRequestNotifier
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func AddAssigneeIfNotAssigned ¶
func AddAssigneeIfNotAssigned(ctx context.Context, issue *issues_model.Issue, doer *user_model.User, assigneeID int64, notify bool) (comment *issues_model.Comment, err error)
AddAssigneeIfNotAssigned adds an assignee only if he isn't already assigned to the issue. Also checks for access of assigned user
func AddLabel ¶
func AddLabel(ctx context.Context, issue *issues_model.Issue, doer *user_model.User, label *issues_model.Label) error
AddLabel adds a new label to the issue.
func AddLabels ¶
func AddLabels(ctx context.Context, issue *issues_model.Issue, doer *user_model.User, labels []*issues_model.Label) error
AddLabels adds a list of new labels to the issue.
func CanDoerChangeReviewRequests ¶
func CanDoerChangeReviewRequests(ctx context.Context, doer *user_model.User, repo *repo_model.Repository, posterID int64) bool
CanDoerChangeReviewRequests returns if the doer can add/remove review requests of a PR
func ChangeContent ¶
func ChangeContent(ctx context.Context, issue *issues_model.Issue, doer *user_model.User, content string, contentVersion int) error
ChangeContent changes issue content, as the given user.
func ChangeIssueRef ¶
func ChangeIssueRef(ctx context.Context, issue *issues_model.Issue, doer *user_model.User, ref string) error
ChangeIssueRef changes the branch of this issue, as the given user.
func ChangeMilestoneAssign ¶
func ChangeMilestoneAssign(ctx context.Context, issue *issues_model.Issue, doer *user_model.User, oldMilestoneID int64) (err error)
ChangeMilestoneAssign changes assignment of milestone for issue.
func ChangeStatus ¶
func ChangeStatus(ctx context.Context, issue *issues_model.Issue, doer *user_model.User, commitID string, closed bool) error
ChangeStatus changes issue status to open or closed. closed means the target status Fix me: you should check whether the current issue status is same to the target status before call this function as in function changeIssueStatus we will return WasClosedError, even the issue status and target status are both open
func ChangeTimeEstimate ¶
func ChangeTimeEstimate(ctx context.Context, issue *issues_model.Issue, doer *user_model.User, timeEstimate int64) (err error)
ChangeTimeEstimate changes the time estimate of this issue, as the given user.
func ChangeTitle ¶
func ChangeTitle(ctx context.Context, issue *issues_model.Issue, doer *user_model.User, title string) error
ChangeTitle changes the title of this issue, as the given user.
func ClearLabels ¶
func ClearLabels(ctx context.Context, issue *issues_model.Issue, doer *user_model.User) error
ClearLabels clears all of an issue's labels
func CreateCommentReaction ¶
func CreateCommentReaction(ctx context.Context, doer *user_model.User, comment *issues_model.Comment, content string) (*issues_model.Reaction, error)
CreateCommentReaction creates a reaction on a comment.
func CreateIssueComment ¶
func CreateIssueComment(ctx context.Context, doer *user_model.User, repo *repo_model.Repository, issue *issues_model.Issue, content string, attachments []string) (*issues_model.Comment, error)
CreateIssueComment creates a plain issue comment.
func CreateIssueReaction ¶
func CreateIssueReaction(ctx context.Context, doer *user_model.User, issue *issues_model.Issue, content string) (*issues_model.Reaction, error)
CreateIssueReaction creates a reaction on an issue.
func CreateRefComment ¶
func CreateRefComment(ctx context.Context, doer *user_model.User, repo *repo_model.Repository, issue *issues_model.Issue, content, commitSHA string) error
CreateRefComment creates a commit reference comment to issue.
func DeleteComment ¶
func DeleteComment(ctx context.Context, doer *user_model.User, comment *issues_model.Comment) error
DeleteComment deletes the comment
func DeleteIssue ¶
func DeleteIssue(ctx context.Context, doer *user_model.User, gitRepo *git.Repository, issue *issues_model.Issue) error
DeleteIssue deletes an issue
func DeleteNotPassedAssignee ¶
func DeleteNotPassedAssignee(ctx context.Context, issue *issues_model.Issue, doer *user_model.User, assignees []*user_model.User) (err error)
DeleteNotPassedAssignee deletes all assignees who aren't passed via the "assignees" array
func GetDefaultTemplateConfig ¶
func GetDefaultTemplateConfig() api.IssueConfig
func GetRefEndNamesAndURLs ¶
func GetRefEndNamesAndURLs(issues []*issues_model.Issue, repoLink string) (map[int64]string, map[int64]string)
GetRefEndNamesAndURLs retrieves the ref end names (e.g. refs/heads/branch-name -> branch-name) and their respective URLs.
func GetTemplateConfig ¶
func GetTemplateConfig(gitRepo *git.Repository, path string, commit *git.Commit) (api.IssueConfig, error)
GetTemplateConfig loads the given issue config file. It never returns a nil config.
func GetTemplateConfigFromDefaultBranch ¶
func GetTemplateConfigFromDefaultBranch(repo *repo.Repository, gitRepo *git.Repository) (api.IssueConfig, error)
GetTemplateConfigFromDefaultBranch returns the issue config for this repo. It never returns a nil config.
func HasTemplatesOrContactLinks ¶
func HasTemplatesOrContactLinks(repo *repo.Repository, gitRepo *git.Repository) bool
func IsTemplateConfig ¶
IsTemplateConfig returns if the given path is a issue config file.
func NewIssue ¶
func NewIssue(ctx context.Context, repo *repo_model.Repository, issue *issues_model.Issue, labelIDs []int64, uuids []string, assigneeIDs []int64, projectID int64) error
NewIssue creates new issue with labels for repository.
func ParseTemplatesFromDefaultBranch ¶
func ParseTemplatesFromDefaultBranch(repo *repo.Repository, gitRepo *git.Repository) (ret struct { IssueTemplates []*api.IssueTemplate TemplateErrors map[string]error }, )
ParseTemplatesFromDefaultBranch parses the issue templates in the repo's default branch, returns valid templates and the errors of invalid template files (the errors map is guaranteed to be non-nil).
func RemoveLabel ¶
func RemoveLabel(ctx context.Context, issue *issues_model.Issue, doer *user_model.User, label *issues_model.Label) error
RemoveLabel removes a label from issue by given ID.
func ReplaceLabels ¶
func ReplaceLabels(ctx context.Context, issue *issues_model.Issue, doer *user_model.User, labels []*issues_model.Label) error
ReplaceLabels removes all current labels and add new labels to the issue.
func ReviewRequest ¶
func ReviewRequest(ctx context.Context, issue *issues_model.Issue, doer *user_model.User, permDoer *access_model.Permission, reviewer *user_model.User, isAdd bool) (comment *issues_model.Comment, err error)
ReviewRequest add or remove a review request from a user for this PR, and make comment for it.
func ReviewRequestNotify ¶
func ReviewRequestNotify(ctx context.Context, issue *issues_model.Issue, doer *user_model.User, reviewNotifiers []*ReviewRequestNotifier)
func TeamReviewRequest ¶
func TeamReviewRequest(ctx context.Context, issue *issues_model.Issue, doer *user_model.User, reviewer *organization.Team, isAdd bool) (comment *issues_model.Comment, err error)
TeamReviewRequest add or remove a review request from a team for this PR, and make comment for it.
func ToggleAssigneeWithNotify ¶
func ToggleAssigneeWithNotify(ctx context.Context, issue *issues_model.Issue, doer *user_model.User, assigneeID int64) (removed bool, comment *issues_model.Comment, err error)
ToggleAssigneeWithNoNotify changes a user between assigned and not assigned for this issue, and make issue comment for it.
func UpdateAssignees ¶
func UpdateAssignees(ctx context.Context, issue *issues_model.Issue, oneAssignee string, multipleAssignees []string, doer *user_model.User) (err error)
UpdateAssignees is a helper function to add or delete one or multiple issue assignee(s) Deleting is done the GitHub way (quote from their api documentation): https://developer.github.com/v3/issues/#edit-an-issue "assignees" (array): Logins for Users to assign to this issue. Pass one or more user logins to replace the set of assignees on this Issue. Send an empty array ([]) to clear all assignees from the Issue.
func UpdateComment ¶
func UpdateComment(ctx context.Context, c *issues_model.Comment, contentVersion int, doer *user_model.User, oldContent string) error
UpdateComment updates information of comment.
func UpdateIssuesCommit ¶
func UpdateIssuesCommit(ctx context.Context, doer *user_model.User, repo *repo_model.Repository, commits []*repository.PushCommit, branchName string) error
UpdateIssuesCommit checks if issues are manipulated by commit message.
Types ¶
type ReviewRequestNotifier ¶
type ReviewRequestNotifier struct { Comment *issues_model.Comment IsAdd bool Reviewer *user_model.User ReviewTeam *org_model.Team }
func PullRequestCodeOwnersReview ¶
func PullRequestCodeOwnersReview(ctx context.Context, issue *issues_model.Issue, pr *issues_model.PullRequest) ([]*ReviewRequestNotifier, error)