diff options
author | Lanre Adelowo <adelowomailbox@gmail.com> | 2019-02-04 16:20:44 +0100 |
---|---|---|
committer | techknowlogick <matti@mdranta.net> | 2019-02-04 10:20:44 -0500 |
commit | 024871ade60c619302430a2852018dcbd1b35b79 (patch) | |
tree | d8a78311e8c40b063ef63424786bcbd2e00ef205 /models/issue_label.go | |
parent | f21ae12abb2529ea6e8ab113706f11d848c74f65 (diff) | |
download | gitea-024871ade60c619302430a2852018dcbd1b35b79.tar.gz gitea-024871ade60c619302430a2852018dcbd1b35b79.zip |
Add label names as filter in issue search api (#5946)
Diffstat (limited to 'models/issue_label.go')
-rw-r--r-- | models/issue_label.go | 15 |
1 files changed, 14 insertions, 1 deletions
diff --git a/models/issue_label.go b/models/issue_label.go index 6adb4eedcb..3c593e72f9 100644 --- a/models/issue_label.go +++ b/models/issue_label.go @@ -203,13 +203,26 @@ func GetLabelInRepoByName(repoID int64, labelName string) (*Label, error) { return getLabelInRepoByName(x, repoID, labelName) } +// GetLabelIDsInRepoByNames returns a list of labelIDs by names in a given +// repository. +// it silently ignores label names that do not belong to the repository. +func GetLabelIDsInRepoByNames(repoID int64, labelNames []string) ([]int64, error) { + labelIDs := make([]int64, 0, len(labelNames)) + return labelIDs, x.Table("label"). + Where("repo_id = ?", repoID). + In("name", labelNames). + Asc("name"). + Cols("id"). + Find(&labelIDs) +} + // GetLabelInRepoByID returns a label by ID in given repository. func GetLabelInRepoByID(repoID, labelID int64) (*Label, error) { return getLabelInRepoByID(x, repoID, labelID) } // GetLabelsInRepoByIDs returns a list of labels by IDs in given repository, -// it silently ignores label IDs that are not belong to the repository. +// it silently ignores label IDs that do not belong to the repository. func GetLabelsInRepoByIDs(repoID int64, labelIDs []int64) ([]*Label, error) { labels := make([]*Label, 0, len(labelIDs)) return labels, x. |