diff options
author | Unknwon <u@gogs.io> | 2017-06-02 14:26:34 -0400 |
---|---|---|
committer | Unknwon <u@gogs.io> | 2017-06-02 14:26:34 -0400 |
commit | c69fa18434f9377557cb3e417d5469e0740e48d1 (patch) | |
tree | 7693be994269be151215d82703213c671cf30b67 /models/repo.go | |
parent | 4cb01fe3320a93b1cae5c8cd3e95d3dbd44c6f3a (diff) |
repo: expose more fields to API format (#4484)
Diffstat (limited to 'models/repo.go')
-rw-r--r-- | models/repo.go | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/models/repo.go b/models/repo.go index 0aa6afda..87354641 100644 --- a/models/repo.go +++ b/models/repo.go @@ -285,7 +285,7 @@ func (repo *Repository) HTMLURL() string { // Arguments that are allowed to be nil: permission func (repo *Repository) APIFormat(permission *api.Permission) *api.Repository { cloneLink := repo.CloneLink() - return &api.Repository{ + apiRepo := &api.Repository{ ID: repo.ID, Owner: repo.Owner.APIFormat(), Name: repo.Name, @@ -293,7 +293,9 @@ func (repo *Repository) APIFormat(permission *api.Permission) *api.Repository { Description: repo.Description, Private: repo.IsPrivate, Fork: repo.IsFork, + Empty: repo.IsBare, Mirror: repo.IsMirror, + Size: repo.Size, HTMLURL: repo.HTMLURL(), SSHURL: cloneLink.SSH, CloneURL: cloneLink.HTTPS, @@ -307,6 +309,11 @@ func (repo *Repository) APIFormat(permission *api.Permission) *api.Repository { Updated: repo.Updated, Permissions: permission, } + if repo.IsFork { + // FIXME: check precise permission for base repository + apiRepo.Parent = repo.BaseRepo.APIFormat(nil) + } + return apiRepo } func (repo *Repository) getOwner(e Engine) (err error) { |