mirror of
				https://github.com/go-gitea/gitea.git
				synced 2025-10-31 21:28:11 +09:00 
			
		
		
		
	GitHub API Compliance (& linting)
This commit is contained in:
		| @@ -67,7 +67,7 @@ func (label *Label) APIFormat() *api.Label { | |||||||
| 	return &api.Label{ | 	return &api.Label{ | ||||||
| 		ID:    label.ID, | 		ID:    label.ID, | ||||||
| 		Name:  label.Name, | 		Name:  label.Name, | ||||||
| 		Color: label.Color, | 		Color: strings.TrimLeft(label.Color, "#"), | ||||||
| 	} | 	} | ||||||
| } | } | ||||||
|  |  | ||||||
| @@ -102,6 +102,27 @@ func NewLabels(labels ...*Label) error { | |||||||
| 	return err | 	return err | ||||||
| } | } | ||||||
|  |  | ||||||
|  | // getLabelInRepoByName returns a label by Name in given repository. | ||||||
|  | // If pass repoID as 0, then ORM will ignore limitation of repository | ||||||
|  | // and can return arbitrary label with any valid ID. | ||||||
|  | func getLabelInRepoByName(e Engine, repoID int64, labelName string) (*Label, error) { | ||||||
|  | 	if len(labelName) <= 0 { | ||||||
|  | 		return nil, ErrLabelNotExist{0, repoID} | ||||||
|  | 	} | ||||||
|  |  | ||||||
|  | 	l := &Label{ | ||||||
|  | 		Name:   labelName, | ||||||
|  | 		RepoID: repoID, | ||||||
|  | 	} | ||||||
|  | 	has, err := x.Get(l) | ||||||
|  | 	if err != nil { | ||||||
|  | 		return nil, err | ||||||
|  | 	} else if !has { | ||||||
|  | 		return nil, ErrLabelNotExist{0, l.RepoID} | ||||||
|  | 	} | ||||||
|  | 	return l, nil | ||||||
|  | } | ||||||
|  |  | ||||||
| // getLabelInRepoByID returns a label by ID in given repository. | // getLabelInRepoByID returns a label by ID in given repository. | ||||||
| // If pass repoID as 0, then ORM will ignore limitation of repository | // If pass repoID as 0, then ORM will ignore limitation of repository | ||||||
| // and can return arbitrary label with any valid ID. | // and can return arbitrary label with any valid ID. | ||||||
| @@ -128,6 +149,11 @@ func GetLabelByID(id int64) (*Label, error) { | |||||||
| 	return getLabelInRepoByID(x, 0, id) | 	return getLabelInRepoByID(x, 0, id) | ||||||
| } | } | ||||||
|  |  | ||||||
|  | // GetLabelInRepoByID returns a label by ID in given repository. | ||||||
|  | func GetLabelInRepoByName(repoID int64, labelName string) (*Label, error) { | ||||||
|  | 	return getLabelInRepoByName(x, repoID, labelName) | ||||||
|  | } | ||||||
|  |  | ||||||
| // GetLabelInRepoByID returns a label by ID in given repository. | // GetLabelInRepoByID returns a label by ID in given repository. | ||||||
| func GetLabelInRepoByID(repoID, labelID int64) (*Label, error) { | func GetLabelInRepoByID(repoID, labelID int64) (*Label, error) { | ||||||
| 	return getLabelInRepoByID(x, repoID, labelID) | 	return getLabelInRepoByID(x, repoID, labelID) | ||||||
|   | |||||||
| @@ -35,6 +35,9 @@ func SignedInID(ctx *macaron.Context, sess session.Store) int64 { | |||||||
| 	// Check access token. | 	// Check access token. | ||||||
| 	if IsAPIPath(ctx.Req.URL.Path) { | 	if IsAPIPath(ctx.Req.URL.Path) { | ||||||
| 		tokenSHA := ctx.Query("token") | 		tokenSHA := ctx.Query("token") | ||||||
|  | 		if len(tokenSHA) <= 0 { | ||||||
|  | 			tokenSHA = ctx.Query("access_token") | ||||||
|  | 		} | ||||||
| 		if len(tokenSHA) == 0 { | 		if len(tokenSHA) == 0 { | ||||||
| 			// Well, check with header again. | 			// Well, check with header again. | ||||||
| 			auHead := ctx.Req.Header.Get("Authorization") | 			auHead := ctx.Req.Header.Get("Authorization") | ||||||
|   | |||||||
| @@ -17,14 +17,26 @@ import ( | |||||||
|  |  | ||||||
| // ListIssues list the issues of a repository | // ListIssues list the issues of a repository | ||||||
| func ListIssues(ctx *context.APIContext) { | func ListIssues(ctx *context.APIContext) { | ||||||
| 	issues, err := models.Issues(&models.IssuesOptions{ | 	issueOpts := models.IssuesOptions{ | ||||||
| 		RepoID: ctx.Repo.Repository.ID, | 		RepoID:   ctx.Repo.Repository.ID, | ||||||
| 		Page:   ctx.QueryInt("page"), | 		Page:     ctx.QueryInt("page"), | ||||||
| 	}) | 		IsClosed: ctx.Query("state") == "closed", | ||||||
|  | 	} | ||||||
|  |  | ||||||
|  | 	issues, err := models.Issues(&issueOpts) | ||||||
| 	if err != nil { | 	if err != nil { | ||||||
| 		ctx.Error(500, "Issues", err) | 		ctx.Error(500, "Issues", err) | ||||||
| 		return | 		return | ||||||
| 	} | 	} | ||||||
|  | 	if ctx.Query("state") == "all" { | ||||||
|  | 		issueOpts.IsClosed = !issueOpts.IsClosed | ||||||
|  | 		temp_issues, err := models.Issues(&issueOpts) | ||||||
|  | 		if err != nil { | ||||||
|  | 			ctx.Error(500, "Issues", err) | ||||||
|  | 			return | ||||||
|  | 		} | ||||||
|  | 		issues = append(issues, temp_issues...) | ||||||
|  | 	} | ||||||
|  |  | ||||||
| 	// FIXME: use IssueList to improve performance. | 	// FIXME: use IssueList to improve performance. | ||||||
| 	apiIssues := make([]*api.Issue, len(issues)) | 	apiIssues := make([]*api.Issue, len(issues)) | ||||||
|   | |||||||
| @@ -5,6 +5,8 @@ | |||||||
| package repo | package repo | ||||||
|  |  | ||||||
| import ( | import ( | ||||||
|  | 	"strconv" | ||||||
|  |  | ||||||
| 	api "code.gitea.io/sdk/gitea" | 	api "code.gitea.io/sdk/gitea" | ||||||
|  |  | ||||||
| 	"code.gitea.io/gitea/models" | 	"code.gitea.io/gitea/models" | ||||||
| @@ -28,7 +30,16 @@ func ListLabels(ctx *context.APIContext) { | |||||||
|  |  | ||||||
| // GetLabel get label by repository and label id | // GetLabel get label by repository and label id | ||||||
| func GetLabel(ctx *context.APIContext) { | func GetLabel(ctx *context.APIContext) { | ||||||
| 	label, err := models.GetLabelInRepoByID(ctx.Repo.Repository.ID, ctx.ParamsInt64(":id")) | 	var ( | ||||||
|  | 		label *models.Label | ||||||
|  | 		err   error | ||||||
|  | 	) | ||||||
|  | 	strID := ctx.Params(":id") | ||||||
|  | 	if intID, err2 := strconv.ParseInt(strID, 10, 64); err2 != nil { | ||||||
|  | 		label, err = models.GetLabelInRepoByName(ctx.Repo.Repository.ID, strID) | ||||||
|  | 	} else { | ||||||
|  | 		label, err = models.GetLabelInRepoByID(ctx.Repo.Repository.ID, intID) | ||||||
|  | 	} | ||||||
| 	if err != nil { | 	if err != nil { | ||||||
| 		if models.IsErrLabelNotExist(err) { | 		if models.IsErrLabelNotExist(err) { | ||||||
| 			ctx.Status(404) | 			ctx.Status(404) | ||||||
|   | |||||||
| @@ -141,7 +141,7 @@ func CreateUserRepo(ctx *context.APIContext, owner *models.User, opt api.CreateR | |||||||
| 	ctx.JSON(201, repo.APIFormat(&api.Permission{true, true, true})) | 	ctx.JSON(201, repo.APIFormat(&api.Permission{true, true, true})) | ||||||
| } | } | ||||||
|  |  | ||||||
| // Create create one repository of mine | // Create one repository of mine | ||||||
| // see https://github.com/gogits/go-gogs-client/wiki/Repositories#create | // see https://github.com/gogits/go-gogs-client/wiki/Repositories#create | ||||||
| func Create(ctx *context.APIContext, opt api.CreateRepoOption) { | func Create(ctx *context.APIContext, opt api.CreateRepoOption) { | ||||||
| 	// Shouldn't reach this condition, but just in case. | 	// Shouldn't reach this condition, but just in case. | ||||||
| @@ -244,7 +244,7 @@ func Migrate(ctx *context.APIContext, form auth.MigrateRepoForm) { | |||||||
| 	ctx.JSON(201, repo.APIFormat(&api.Permission{true, true, true})) | 	ctx.JSON(201, repo.APIFormat(&api.Permission{true, true, true})) | ||||||
| } | } | ||||||
|  |  | ||||||
| // Get get one repository | // Get one repository | ||||||
| // see https://github.com/gogits/go-gogs-client/wiki/Repositories#get | // see https://github.com/gogits/go-gogs-client/wiki/Repositories#get | ||||||
| func Get(ctx *context.APIContext) { | func Get(ctx *context.APIContext) { | ||||||
| 	repo := ctx.Repo.Repository | 	repo := ctx.Repo.Repository | ||||||
| @@ -266,7 +266,7 @@ func GetByID(ctx *context.APIContext) { | |||||||
| 	ctx.JSON(200, repo.APIFormat(&api.Permission{true, true, true})) | 	ctx.JSON(200, repo.APIFormat(&api.Permission{true, true, true})) | ||||||
| } | } | ||||||
|  |  | ||||||
| // Delete delete one repository | // Delete one repository | ||||||
| // see https://github.com/gogits/go-gogs-client/wiki/Repositories#delete | // see https://github.com/gogits/go-gogs-client/wiki/Repositories#delete | ||||||
| func Delete(ctx *context.APIContext) { | func Delete(ctx *context.APIContext) { | ||||||
| 	owner := ctx.Repo.Owner | 	owner := ctx.Repo.Owner | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user