forked from gitea/gitea
		
	Fix some API bugs (#16184)
* Repository object only count releases as releases (fix #16144) * EditOrg respect RepoAdminChangeTeamAccess option (fix #16013)
This commit is contained in:
		
							parent
							
								
									29695cd6d5
								
							
						
					
					
						commit
						75205b5669
					
				| @ -223,7 +223,7 @@ func TestAPIViewRepo(t *testing.T) { | ||||
| 	DecodeJSON(t, resp, &repo) | ||||
| 	assert.EqualValues(t, 1, repo.ID) | ||||
| 	assert.EqualValues(t, "repo1", repo.Name) | ||||
| 	assert.EqualValues(t, 3, repo.Releases) | ||||
| 	assert.EqualValues(t, 2, repo.Releases) | ||||
| 	assert.EqualValues(t, 1, repo.OpenIssues) | ||||
| 	assert.EqualValues(t, 3, repo.OpenPulls) | ||||
| 
 | ||||
|  | ||||
| @ -91,7 +91,7 @@ func innerToRepo(repo *models.Repository, mode models.AccessMode, isParent bool) | ||||
| 		return nil | ||||
| 	} | ||||
| 
 | ||||
| 	numReleases, _ := models.GetReleaseCountByRepoID(repo.ID, models.FindReleasesOptions{IncludeDrafts: false, IncludeTags: true}) | ||||
| 	numReleases, _ := models.GetReleaseCountByRepoID(repo.ID, models.FindReleasesOptions{IncludeDrafts: false, IncludeTags: false}) | ||||
| 
 | ||||
| 	mirrorInterval := "" | ||||
| 	if repo.IsMirror { | ||||
|  | ||||
| @ -31,6 +31,8 @@ type CreateOrgOption struct { | ||||
| 	RepoAdminChangeTeamAccess bool   `json:"repo_admin_change_team_access"` | ||||
| } | ||||
| 
 | ||||
| // TODO: make EditOrgOption fields optional after https://gitea.com/go-chi/binding/pulls/5 got merged | ||||
| 
 | ||||
| // EditOrgOption options for editing an organization | ||||
| type EditOrgOption struct { | ||||
| 	FullName    string `json:"full_name"` | ||||
| @ -40,5 +42,5 @@ type EditOrgOption struct { | ||||
| 	// possible values are `public`, `limited` or `private` | ||||
| 	// enum: public,limited,private | ||||
| 	Visibility                string `json:"visibility" binding:"In(,public,limited,private)"` | ||||
| 	RepoAdminChangeTeamAccess bool   `json:"repo_admin_change_team_access"` | ||||
| 	RepoAdminChangeTeamAccess *bool  `json:"repo_admin_change_team_access"` | ||||
| } | ||||
|  | ||||
| @ -264,7 +264,13 @@ func Edit(ctx *context.APIContext) { | ||||
| 	if form.Visibility != "" { | ||||
| 		org.Visibility = api.VisibilityModes[form.Visibility] | ||||
| 	} | ||||
| 	if err := models.UpdateUserCols(org, "full_name", "description", "website", "location", "visibility"); err != nil { | ||||
| 	if form.RepoAdminChangeTeamAccess != nil { | ||||
| 		org.RepoAdminChangeTeamAccess = *form.RepoAdminChangeTeamAccess | ||||
| 	} | ||||
| 	if err := models.UpdateUserCols(org, | ||||
| 		"full_name", "description", "website", "location", | ||||
| 		"visibility", "repo_admin_change_team_access", | ||||
| 	); err != nil { | ||||
| 		ctx.Error(http.StatusInternalServerError, "EditOrganization", err) | ||||
| 		return | ||||
| 	} | ||||
|  | ||||
| @ -55,7 +55,7 @@ func parseTime(value string) (int64, error) { | ||||
| // prepareQueryArg unescape and trim a query arg | ||||
| func prepareQueryArg(ctx *context.APIContext, name string) (value string, err error) { | ||||
| 	value, err = url.PathUnescape(ctx.Query(name)) | ||||
| 	value = strings.Trim(value, " ") | ||||
| 	value = strings.TrimSpace(value) | ||||
| 	return | ||||
| } | ||||
| 
 | ||||
|  | ||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user
	 6543
						6543