Replace convert.To with APIFormat calls
This commit is contained in:
		
							parent
							
								
									3f7f4852ef
								
							
						
					
					
						commit
						dccb0c15b9
					
				
					 21 changed files with 79 additions and 225 deletions
				
			
		|  | @ -18,8 +18,8 @@ github.com/go-xorm/core = commit:5bf745d | ||||||
| github.com/go-xorm/xorm = commit:c6c7056 | github.com/go-xorm/xorm = commit:c6c7056 | ||||||
| github.com/gogits/chardet = commit:2404f77 | github.com/gogits/chardet = commit:2404f77 | ||||||
| github.com/gogits/cron = commit:7f3990a | github.com/gogits/cron = commit:7f3990a | ||||||
| github.com/gogits/git-module = commit:efc90b5 | github.com/gogits/git-module = commit:313ce90 | ||||||
| github.com/gogits/go-gogs-client = commit:87e4334 | github.com/gogits/go-gogs-client = commit:e363d3f | ||||||
| github.com/issue9/identicon = commit:d36b545 | github.com/issue9/identicon = commit:d36b545 | ||||||
| github.com/jaytaylor/html2text = commit:52d9b78 | github.com/jaytaylor/html2text = commit:52d9b78 | ||||||
| github.com/kardianos/minwinsvc = commit:cad6b2b | github.com/kardianos/minwinsvc = commit:cad6b2b | ||||||
|  |  | ||||||
|  | @ -3,7 +3,7 @@ Gogs - Go Git Service [ |  | ||||||
| 
 | 
 | ||||||
| ##### Current tip version: 0.9.76 (see [Releases](https://github.com/gogits/gogs/releases) for binary versions) | ##### Current tip version: 0.9.77 (see [Releases](https://github.com/gogits/gogs/releases) for binary versions) | ||||||
| 
 | 
 | ||||||
| | Web | UI  | Preview  | | | Web | UI  | Preview  | | ||||||
| |:-------------:|:-------:|:-------:| | |:-------------:|:-------:|:-------:| | ||||||
|  |  | ||||||
|  | @ -15,6 +15,7 @@ import ( | ||||||
| 
 | 
 | ||||||
| 	"github.com/Unknwon/com" | 	"github.com/Unknwon/com" | ||||||
| 	"github.com/codegangsta/cli" | 	"github.com/codegangsta/cli" | ||||||
|  | 	git "github.com/gogits/git-module" | ||||||
| 	gouuid "github.com/satori/go.uuid" | 	gouuid "github.com/satori/go.uuid" | ||||||
| 
 | 
 | ||||||
| 	"github.com/gogits/gogs/models" | 	"github.com/gogits/gogs/models" | ||||||
|  | @ -113,7 +114,7 @@ func handleUpdateTask(uuid string, user, repoUser *models.User, reponame string, | ||||||
| 
 | 
 | ||||||
| 	// Ask for running deliver hook and test pull request tasks.
 | 	// Ask for running deliver hook and test pull request tasks.
 | ||||||
| 	reqURL := setting.LocalURL + repoUser.Name + "/" + reponame + "/tasks/trigger?branch=" + | 	reqURL := setting.LocalURL + repoUser.Name + "/" + reponame + "/tasks/trigger?branch=" + | ||||||
| 		strings.TrimPrefix(task.RefName, "refs/heads/") + "&secret=" + base.EncodeMD5(repoUser.Salt) + "&pusher=" + com.ToStr(user.ID) | 		strings.TrimPrefix(task.RefName, git.BRANCH_PREFIX) + "&secret=" + base.EncodeMD5(repoUser.Salt) + "&pusher=" + com.ToStr(user.ID) | ||||||
| 	log.GitLogger.Trace("Trigger task: %s", reqURL) | 	log.GitLogger.Trace("Trigger task: %s", reqURL) | ||||||
| 
 | 
 | ||||||
| 	resp, err := httplib.Head(reqURL).SetTLSClientConfig(&tls.Config{ | 	resp, err := httplib.Head(reqURL).SetTLSClientConfig(&tls.Config{ | ||||||
|  |  | ||||||
|  | @ -89,7 +89,7 @@ func checkVersion() { | ||||||
| 		{"gopkg.in/ini.v1", ini.Version, "1.8.4"}, | 		{"gopkg.in/ini.v1", ini.Version, "1.8.4"}, | ||||||
| 		{"gopkg.in/macaron.v1", macaron.Version, "1.1.7"}, | 		{"gopkg.in/macaron.v1", macaron.Version, "1.1.7"}, | ||||||
| 		{"github.com/gogits/git-module", git.Version, "0.3.5"}, | 		{"github.com/gogits/git-module", git.Version, "0.3.5"}, | ||||||
| 		{"github.com/gogits/go-gogs-client", gogs.Version, "0.10.4"}, | 		{"github.com/gogits/go-gogs-client", gogs.Version, "0.12.0"}, | ||||||
| 	} | 	} | ||||||
| 	for _, c := range checkers { | 	for _, c := range checkers { | ||||||
| 		if !version.Compare(c.Version(), c.Expected, ">=") { | 		if !version.Compare(c.Version(), c.Expected, ">=") { | ||||||
|  |  | ||||||
							
								
								
									
										4
									
								
								glide.lock
									
									
									
										generated
									
									
									
								
							
							
						
						
									
										4
									
								
								glide.lock
									
									
									
										generated
									
									
									
								
							|  | @ -41,9 +41,9 @@ imports: | ||||||
| - name: github.com/gogits/cron | - name: github.com/gogits/cron | ||||||
|   version: 7f3990acf1833faa5ebd0e86f0a4c72a4b5eba3c |   version: 7f3990acf1833faa5ebd0e86f0a4c72a4b5eba3c | ||||||
| - name: github.com/gogits/git-module | - name: github.com/gogits/git-module | ||||||
|   version: efc90b5ea1f7b7e404673dcc19674b2a6856e0d3 |   version: 313ce907cc5a5801126c7dfa3a74d21cc3104329 | ||||||
| - name: github.com/gogits/go-gogs-client | - name: github.com/gogits/go-gogs-client | ||||||
|   version: 87e433464c1f5e98e7208123c15b78119776fb83 |   version: e363d3ff8f70d0fe813324eedf228684af41c29c | ||||||
| - name: github.com/issue9/identicon | - name: github.com/issue9/identicon | ||||||
|   version: d36b54562f4cf70c83653e13dc95c220c79ef521 |   version: d36b54562f4cf70c83653e13dc95c220c79ef521 | ||||||
| - name: github.com/jaytaylor/html2text | - name: github.com/jaytaylor/html2text | ||||||
|  |  | ||||||
							
								
								
									
										2
									
								
								gogs.go
									
									
									
									
									
								
							
							
						
						
									
										2
									
								
								gogs.go
									
									
									
									
									
								
							|  | @ -17,7 +17,7 @@ import ( | ||||||
| 	"github.com/gogits/gogs/modules/setting" | 	"github.com/gogits/gogs/modules/setting" | ||||||
| ) | ) | ||||||
| 
 | 
 | ||||||
| const APP_VER = "0.9.76.0814" | const APP_VER = "0.9.77.0814" | ||||||
| 
 | 
 | ||||||
| func init() { | func init() { | ||||||
| 	runtime.GOMAXPROCS(runtime.NumCPU()) | 	runtime.GOMAXPROCS(runtime.NumCPU()) | ||||||
|  |  | ||||||
|  | @ -246,7 +246,7 @@ type PushCommit struct { | ||||||
| type PushCommits struct { | type PushCommits struct { | ||||||
| 	Len        int | 	Len        int | ||||||
| 	Commits    []*PushCommit | 	Commits    []*PushCommit | ||||||
| 	CompareUrl string | 	CompareURL string | ||||||
| 
 | 
 | ||||||
| 	avatars map[string]string | 	avatars map[string]string | ||||||
| } | } | ||||||
|  | @ -275,12 +275,12 @@ func (pc *PushCommits) ToApiPayloadCommits(repoLink string) []*api.PayloadCommit | ||||||
| 			ID:      commit.Sha1, | 			ID:      commit.Sha1, | ||||||
| 			Message: commit.Message, | 			Message: commit.Message, | ||||||
| 			URL:     fmt.Sprintf("%s/commit/%s", repoLink, commit.Sha1), | 			URL:     fmt.Sprintf("%s/commit/%s", repoLink, commit.Sha1), | ||||||
| 			Author: &api.PayloadAuthor{ | 			Author: &api.PayloadUser{ | ||||||
| 				Name:     commit.AuthorName, | 				Name:     commit.AuthorName, | ||||||
| 				Email:    commit.AuthorEmail, | 				Email:    commit.AuthorEmail, | ||||||
| 				UserName: authorUsername, | 				UserName: authorUsername, | ||||||
| 			}, | 			}, | ||||||
| 			Committer: &api.PayloadCommitter{ | 			Committer: &api.PayloadUser{ | ||||||
| 				Name:     commit.CommitterName, | 				Name:     commit.CommitterName, | ||||||
| 				Email:    commit.CommitterEmail, | 				Email:    commit.CommitterEmail, | ||||||
| 				UserName: committerUsername, | 				UserName: committerUsername, | ||||||
|  | @ -475,7 +475,7 @@ func CommitRepoAction( | ||||||
| 	} else { | 	} else { | ||||||
| 		// if not the first commit, set the compareUrl
 | 		// if not the first commit, set the compareUrl
 | ||||||
| 		if !strings.HasPrefix(oldCommitID, "0000000") { | 		if !strings.HasPrefix(oldCommitID, "0000000") { | ||||||
| 			commit.CompareUrl = repo.ComposeCompareURL(oldCommitID, newCommitID) | 			commit.CompareURL = repo.ComposeCompareURL(oldCommitID, newCommitID) | ||||||
| 		} else { | 		} else { | ||||||
| 			isNewBranch = true | 			isNewBranch = true | ||||||
| 		} | 		} | ||||||
|  | @ -495,7 +495,6 @@ func CommitRepoAction( | ||||||
| 	} | 	} | ||||||
| 
 | 
 | ||||||
| 	refName := git.RefEndName(refFullName) | 	refName := git.RefEndName(refFullName) | ||||||
| 
 |  | ||||||
| 	if err = NotifyWatchers(&Action{ | 	if err = NotifyWatchers(&Action{ | ||||||
| 		ActUserID:    u.ID, | 		ActUserID:    u.ID, | ||||||
| 		ActUserName:  userName, | 		ActUserName:  userName, | ||||||
|  | @ -511,35 +510,24 @@ func CommitRepoAction( | ||||||
| 		return fmt.Errorf("NotifyWatchers: %v", err) | 		return fmt.Errorf("NotifyWatchers: %v", err) | ||||||
| 	} | 	} | ||||||
| 
 | 
 | ||||||
| 	payloadRepo := repo.ComposePayload() |  | ||||||
| 
 |  | ||||||
| 	var pusherEmail, pusherName string |  | ||||||
| 	pusher, err := GetUserByName(userName) | 	pusher, err := GetUserByName(userName) | ||||||
| 	if err == nil { | 	if err != nil { | ||||||
| 		pusherEmail = pusher.Email | 		return fmt.Errorf("GetUserByName: %v", err) | ||||||
| 		pusherName = pusher.DisplayName() |  | ||||||
| 	} |  | ||||||
| 	payloadSender := &api.PayloadUser{ |  | ||||||
| 		UserName:  pusher.Name, |  | ||||||
| 		ID:        pusher.ID, |  | ||||||
| 		AvatarUrl: pusher.AvatarLink(), |  | ||||||
| 	} | 	} | ||||||
|  | 	apiPusher := pusher.APIFormat() | ||||||
| 
 | 
 | ||||||
|  | 	apiRepo := repo.APIFormat(nil) | ||||||
| 	switch opType { | 	switch opType { | ||||||
| 	case ACTION_COMMIT_REPO: // Push
 | 	case ACTION_COMMIT_REPO: // Push
 | ||||||
| 		if err = PrepareWebhooks(repo, HOOK_EVENT_PUSH, &api.PushPayload{ | 		if err = PrepareWebhooks(repo, HOOK_EVENT_PUSH, &api.PushPayload{ | ||||||
| 			Ref:        refFullName, | 			Ref:        refFullName, | ||||||
| 			Before:     oldCommitID, | 			Before:     oldCommitID, | ||||||
| 			After:      newCommitID, | 			After:      newCommitID, | ||||||
| 			CompareUrl: setting.AppUrl + commit.CompareUrl, | 			CompareURL: setting.AppUrl + commit.CompareURL, | ||||||
| 			Commits:    commit.ToApiPayloadCommits(repo.FullLink()), | 			Commits:    commit.ToApiPayloadCommits(repo.FullLink()), | ||||||
| 			Repo:       payloadRepo, | 			Repo:       apiRepo, | ||||||
| 			Pusher: &api.PayloadAuthor{ | 			Pusher:     apiPusher, | ||||||
| 				Name:     pusherName, | 			Sender:     apiPusher, | ||||||
| 				Email:    pusherEmail, |  | ||||||
| 				UserName: userName, |  | ||||||
| 			}, |  | ||||||
| 			Sender: payloadSender, |  | ||||||
| 		}); err != nil { | 		}); err != nil { | ||||||
| 			return fmt.Errorf("PrepareWebhooks: %v", err) | 			return fmt.Errorf("PrepareWebhooks: %v", err) | ||||||
| 		} | 		} | ||||||
|  | @ -548,8 +536,8 @@ func CommitRepoAction( | ||||||
| 			return PrepareWebhooks(repo, HOOK_EVENT_CREATE, &api.CreatePayload{ | 			return PrepareWebhooks(repo, HOOK_EVENT_CREATE, &api.CreatePayload{ | ||||||
| 				Ref:     refName, | 				Ref:     refName, | ||||||
| 				RefType: "branch", | 				RefType: "branch", | ||||||
| 				Repo:    payloadRepo, | 				Repo:    apiRepo, | ||||||
| 				Sender:  payloadSender, | 				Sender:  apiPusher, | ||||||
| 			}) | 			}) | ||||||
| 		} | 		} | ||||||
| 
 | 
 | ||||||
|  | @ -557,8 +545,8 @@ func CommitRepoAction( | ||||||
| 		return PrepareWebhooks(repo, HOOK_EVENT_CREATE, &api.CreatePayload{ | 		return PrepareWebhooks(repo, HOOK_EVENT_CREATE, &api.CreatePayload{ | ||||||
| 			Ref:     refName, | 			Ref:     refName, | ||||||
| 			RefType: "tag", | 			RefType: "tag", | ||||||
| 			Repo:    payloadRepo, | 			Repo:    apiRepo, | ||||||
| 			Sender:  payloadSender, | 			Sender:  apiPusher, | ||||||
| 		}) | 		}) | ||||||
| 	} | 	} | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
|  | @ -308,22 +308,14 @@ func (pr *PullRequest) Merge(doer *User, baseGitRepo *git.Repository) (err error | ||||||
| 	l.PushFront(mergeCommit) | 	l.PushFront(mergeCommit) | ||||||
| 
 | 
 | ||||||
| 	p := &api.PushPayload{ | 	p := &api.PushPayload{ | ||||||
| 		Ref:        "refs/heads/" + pr.BaseBranch, | 		Ref:        git.BRANCH_PREFIX + pr.BaseBranch, | ||||||
| 		Before:     pr.MergeBase, | 		Before:     pr.MergeBase, | ||||||
| 		After:      pr.MergedCommitID, | 		After:      pr.MergedCommitID, | ||||||
| 		CompareUrl: setting.AppUrl + pr.BaseRepo.ComposeCompareURL(pr.MergeBase, pr.MergedCommitID), | 		CompareURL: setting.AppUrl + pr.BaseRepo.ComposeCompareURL(pr.MergeBase, pr.MergedCommitID), | ||||||
| 		Commits:    ListToPushCommits(l).ToApiPayloadCommits(pr.BaseRepo.FullLink()), | 		Commits:    ListToPushCommits(l).ToApiPayloadCommits(pr.BaseRepo.FullLink()), | ||||||
| 		Repo:       pr.BaseRepo.ComposePayload(), | 		Repo:       pr.BaseRepo.APIFormat(nil), | ||||||
| 		Pusher: &api.PayloadAuthor{ | 		Pusher:     pr.HeadRepo.MustOwner().APIFormat(), | ||||||
| 			Name:     pr.HeadRepo.MustOwner().DisplayName(), | 		Sender:     doer.APIFormat(), | ||||||
| 			Email:    pr.HeadRepo.MustOwner().Email, |  | ||||||
| 			UserName: pr.HeadRepo.MustOwner().Name, |  | ||||||
| 		}, |  | ||||||
| 		Sender: &api.PayloadUser{ |  | ||||||
| 			UserName:  doer.Name, |  | ||||||
| 			ID:        doer.ID, |  | ||||||
| 			AvatarUrl: doer.AvatarLink(), |  | ||||||
| 		}, |  | ||||||
| 	} | 	} | ||||||
| 	if err = PrepareWebhooks(pr.BaseRepo, HOOK_EVENT_PUSH, p); err != nil { | 	if err = PrepareWebhooks(pr.BaseRepo, HOOK_EVENT_PUSH, p); err != nil { | ||||||
| 		return fmt.Errorf("PrepareWebhooks: %v", err) | 		return fmt.Errorf("PrepareWebhooks: %v", err) | ||||||
|  |  | ||||||
|  | @ -482,28 +482,6 @@ func (repo *Repository) SavePatch(index int64, patch []byte) error { | ||||||
| 	return nil | 	return nil | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
| // ComposePayload composes and returns *api.PayloadRepo corresponding to the repository.
 |  | ||||||
| func (repo *Repository) ComposePayload() *api.PayloadRepo { |  | ||||||
| 	cl := repo.CloneLink() |  | ||||||
| 	return &api.PayloadRepo{ |  | ||||||
| 		ID:          repo.ID, |  | ||||||
| 		Name:        repo.Name, |  | ||||||
| 		URL:         repo.FullLink(), |  | ||||||
| 		SSHURL:      cl.SSH, |  | ||||||
| 		CloneURL:    cl.HTTPS, |  | ||||||
| 		Description: repo.Description, |  | ||||||
| 		Website:     repo.Website, |  | ||||||
| 		Watchers:    repo.NumWatches, |  | ||||||
| 		Owner: &api.PayloadAuthor{ |  | ||||||
| 			Name:     repo.MustOwner().DisplayName(), |  | ||||||
| 			Email:    repo.MustOwner().Email, |  | ||||||
| 			UserName: repo.MustOwner().Name, |  | ||||||
| 		}, |  | ||||||
| 		Private:       repo.IsPrivate, |  | ||||||
| 		DefaultBranch: repo.DefaultBranch, |  | ||||||
| 	} |  | ||||||
| } |  | ||||||
| 
 |  | ||||||
| func isRepositoryExist(e Engine, u *User, repoName string) (bool, error) { | func isRepositoryExist(e Engine, u *User, repoName string) (bool, error) { | ||||||
| 	has, err := e.Get(&Repository{ | 	has, err := e.Get(&Repository{ | ||||||
| 		OwnerID:   u.ID, | 		OwnerID:   u.ID, | ||||||
|  |  | ||||||
|  | @ -76,8 +76,8 @@ func getSlackCreatePayload(p *api.CreatePayload, slack *SlackMeta) (*SlackPayloa | ||||||
| 	// created tag/branch
 | 	// created tag/branch
 | ||||||
| 	refName := git.RefEndName(p.Ref) | 	refName := git.RefEndName(p.Ref) | ||||||
| 
 | 
 | ||||||
| 	repoLink := SlackLinkFormatter(p.Repo.URL, p.Repo.Name) | 	repoLink := SlackLinkFormatter(p.Repo.HTMLURL, p.Repo.Name) | ||||||
| 	refLink := SlackLinkFormatter(p.Repo.URL+"/src/"+refName, refName) | 	refLink := SlackLinkFormatter(p.Repo.HTMLURL+"/src/"+refName, refName) | ||||||
| 	text := fmt.Sprintf("[%s:%s] %s created by %s", repoLink, refLink, p.RefType, p.Sender.UserName) | 	text := fmt.Sprintf("[%s:%s] %s created by %s", repoLink, refLink, p.RefType, p.Sender.UserName) | ||||||
| 
 | 
 | ||||||
| 	return &SlackPayload{ | 	return &SlackPayload{ | ||||||
|  | @ -101,15 +101,15 @@ func getSlackPushPayload(p *api.PushPayload, slack *SlackMeta) (*SlackPayload, e | ||||||
| 	} else { | 	} else { | ||||||
| 		commitDesc = fmt.Sprintf("%d new commits", len(p.Commits)) | 		commitDesc = fmt.Sprintf("%d new commits", len(p.Commits)) | ||||||
| 	} | 	} | ||||||
| 	if len(p.CompareUrl) > 0 { | 	if len(p.CompareURL) > 0 { | ||||||
| 		commitString = SlackLinkFormatter(p.CompareUrl, commitDesc) | 		commitString = SlackLinkFormatter(p.CompareURL, commitDesc) | ||||||
| 	} else { | 	} else { | ||||||
| 		commitString = commitDesc | 		commitString = commitDesc | ||||||
| 	} | 	} | ||||||
| 
 | 
 | ||||||
| 	repoLink := SlackLinkFormatter(p.Repo.URL, p.Repo.Name) | 	repoLink := SlackLinkFormatter(p.Repo.HTMLURL, p.Repo.Name) | ||||||
| 	branchLink := SlackLinkFormatter(p.Repo.URL+"/src/"+branchName, branchName) | 	branchLink := SlackLinkFormatter(p.Repo.HTMLURL+"/src/"+branchName, branchName) | ||||||
| 	text := fmt.Sprintf("[%s:%s] %s pushed by %s", repoLink, branchLink, commitString, p.Pusher.Name) | 	text := fmt.Sprintf("[%s:%s] %s pushed by %s", repoLink, branchLink, commitString, p.Pusher.UserName) | ||||||
| 
 | 
 | ||||||
| 	var attachmentText string | 	var attachmentText string | ||||||
| 	// for each commit, generate attachment text
 | 	// for each commit, generate attachment text
 | ||||||
|  | @ -135,7 +135,7 @@ func getSlackPushPayload(p *api.PushPayload, slack *SlackMeta) (*SlackPayload, e | ||||||
| 
 | 
 | ||||||
| func getSlackPullRequestPayload(p *api.PullRequestPayload, slack *SlackMeta) (*SlackPayload, error) { | func getSlackPullRequestPayload(p *api.PullRequestPayload, slack *SlackMeta) (*SlackPayload, error) { | ||||||
| 	senderLink := SlackLinkFormatter(setting.AppUrl+p.Sender.UserName, p.Sender.UserName) | 	senderLink := SlackLinkFormatter(setting.AppUrl+p.Sender.UserName, p.Sender.UserName) | ||||||
| 	titleLink := SlackLinkFormatter(fmt.Sprintf("%s/%d", setting.AppUrl+p.Repository.FullName+"/pulls", p.Index), | 	titleLink := SlackLinkFormatter(fmt.Sprintf("%s/pulls/%d", p.Repository.HTMLURL, p.Index), | ||||||
| 		fmt.Sprintf("#%d %s", p.Index, p.PullRequest.Title)) | 		fmt.Sprintf("#%d %s", p.Index, p.PullRequest.Title)) | ||||||
| 	var text, title, attachmentText string | 	var text, title, attachmentText string | ||||||
| 	switch p.Action { | 	switch p.Action { | ||||||
|  |  | ||||||
|  | @ -11,7 +11,6 @@ import ( | ||||||
| 	"github.com/gogits/gogs/modules/context" | 	"github.com/gogits/gogs/modules/context" | ||||||
| 	"github.com/gogits/gogs/modules/log" | 	"github.com/gogits/gogs/modules/log" | ||||||
| 	"github.com/gogits/gogs/modules/setting" | 	"github.com/gogits/gogs/modules/setting" | ||||||
| 	"github.com/gogits/gogs/routers/api/v1/convert" |  | ||||||
| 	"github.com/gogits/gogs/routers/api/v1/user" | 	"github.com/gogits/gogs/routers/api/v1/user" | ||||||
| ) | ) | ||||||
| 
 | 
 | ||||||
|  | @ -69,7 +68,7 @@ func CreateUser(ctx *context.APIContext, form api.CreateUserOption) { | ||||||
| 		models.SendRegisterNotifyMail(ctx.Context.Context, u) | 		models.SendRegisterNotifyMail(ctx.Context.Context, u) | ||||||
| 	} | 	} | ||||||
| 
 | 
 | ||||||
| 	ctx.JSON(201, convert.ToUser(u)) | 	ctx.JSON(201, u.APIFormat()) | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
| // https://github.com/gogits/go-gogs-client/wiki/Administration-Users#edit-an-existing-user
 | // https://github.com/gogits/go-gogs-client/wiki/Administration-Users#edit-an-existing-user
 | ||||||
|  | @ -121,7 +120,7 @@ func EditUser(ctx *context.APIContext, form api.EditUserOption) { | ||||||
| 	} | 	} | ||||||
| 	log.Trace("Account profile updated by admin (%s): %s", ctx.User.Name, u.Name) | 	log.Trace("Account profile updated by admin (%s): %s", ctx.User.Name, u.Name) | ||||||
| 
 | 
 | ||||||
| 	ctx.JSON(200, convert.ToUser(u)) | 	ctx.JSON(200, u.APIFormat()) | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
| // https://github.com/gogits/go-gogs-client/wiki/Administration-Users#delete-a-user
 | // https://github.com/gogits/go-gogs-client/wiki/Administration-Users#delete-a-user
 | ||||||
|  |  | ||||||
|  | @ -13,23 +13,8 @@ import ( | ||||||
| 	api "github.com/gogits/go-gogs-client" | 	api "github.com/gogits/go-gogs-client" | ||||||
| 
 | 
 | ||||||
| 	"github.com/gogits/gogs/models" | 	"github.com/gogits/gogs/models" | ||||||
| 	"github.com/gogits/gogs/modules/setting" |  | ||||||
| ) | ) | ||||||
| 
 | 
 | ||||||
| func ToUser(u *models.User) *api.User { |  | ||||||
| 	if u == nil { |  | ||||||
| 		return nil |  | ||||||
| 	} |  | ||||||
| 
 |  | ||||||
| 	return &api.User{ |  | ||||||
| 		ID:        u.ID, |  | ||||||
| 		UserName:  u.Name, |  | ||||||
| 		FullName:  u.FullName, |  | ||||||
| 		Email:     u.Email, |  | ||||||
| 		AvatarUrl: u.AvatarLink(), |  | ||||||
| 	} |  | ||||||
| } |  | ||||||
| 
 |  | ||||||
| func ToEmail(email *models.EmailAddress) *api.Email { | func ToEmail(email *models.EmailAddress) *api.Email { | ||||||
| 	return &api.Email{ | 	return &api.Email{ | ||||||
| 		Email:    email.Email, | 		Email:    email.Email, | ||||||
|  | @ -38,28 +23,6 @@ func ToEmail(email *models.EmailAddress) *api.Email { | ||||||
| 	} | 	} | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
| func ToRepository(owner *models.User, repo *models.Repository, permission api.Permission) *api.Repository { |  | ||||||
| 	cl := repo.CloneLink() |  | ||||||
| 	return &api.Repository{ |  | ||||||
| 		ID:          repo.ID, |  | ||||||
| 		Owner:       ToUser(owner), |  | ||||||
| 		FullName:    owner.Name + "/" + repo.Name, |  | ||||||
| 		Description: repo.Description, |  | ||||||
| 		Private:     repo.IsPrivate, |  | ||||||
| 		Fork:        repo.IsFork, |  | ||||||
| 		HTMLURL:     setting.AppUrl + owner.Name + "/" + repo.Name, |  | ||||||
| 		CloneURL:    cl.HTTPS, |  | ||||||
| 		SSHURL:      cl.SSH, |  | ||||||
| 		OpenIssues:  repo.NumOpenIssues, |  | ||||||
| 		Stars:       repo.NumStars, |  | ||||||
| 		Forks:       repo.NumForks, |  | ||||||
| 		Watchers:    repo.NumWatches, |  | ||||||
| 		Created:     repo.Created, |  | ||||||
| 		Updated:     repo.Updated, |  | ||||||
| 		Permissions: &permission, |  | ||||||
| 	} |  | ||||||
| } |  | ||||||
| 
 |  | ||||||
| func ToBranch(b *models.Branch, c *git.Commit) *api.Branch { | func ToBranch(b *models.Branch, c *git.Commit) *api.Branch { | ||||||
| 	return &api.Branch{ | 	return &api.Branch{ | ||||||
| 		Name:   b.Name, | 		Name:   b.Name, | ||||||
|  | @ -82,12 +45,12 @@ func ToCommit(c *git.Commit) *api.PayloadCommit { | ||||||
| 		ID:      c.ID.String(), | 		ID:      c.ID.String(), | ||||||
| 		Message: c.Message(), | 		Message: c.Message(), | ||||||
| 		URL:     "Not implemented", | 		URL:     "Not implemented", | ||||||
| 		Author: &api.PayloadAuthor{ | 		Author: &api.PayloadUser{ | ||||||
| 			Name:     c.Author.Name, | 			Name:     c.Author.Name, | ||||||
| 			Email:    c.Author.Email, | 			Email:    c.Author.Email, | ||||||
| 			UserName: authorUsername, | 			UserName: authorUsername, | ||||||
| 		}, | 		}, | ||||||
| 		Committer: &api.PayloadCommitter{ | 		Committer: &api.PayloadUser{ | ||||||
| 			Name:     c.Committer.Name, | 			Name:     c.Committer.Name, | ||||||
| 			Email:    c.Committer.Email, | 			Email:    c.Committer.Email, | ||||||
| 			UserName: committerUsername, | 			UserName: committerUsername, | ||||||
|  | @ -142,68 +105,6 @@ func ToDeployKey(apiLink string, key *models.DeployKey) *api.DeployKey { | ||||||
| 	} | 	} | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
| func ToLabel(label *models.Label) *api.Label { |  | ||||||
| 	return &api.Label{ |  | ||||||
| 		ID:    label.ID, |  | ||||||
| 		Name:  label.Name, |  | ||||||
| 		Color: label.Color, |  | ||||||
| 	} |  | ||||||
| } |  | ||||||
| 
 |  | ||||||
| func ToMilestone(milestone *models.Milestone) *api.Milestone { |  | ||||||
| 	if milestone == nil { |  | ||||||
| 		return nil |  | ||||||
| 	} |  | ||||||
| 
 |  | ||||||
| 	apiMilestone := &api.Milestone{ |  | ||||||
| 		ID:           milestone.ID, |  | ||||||
| 		State:        milestone.State(), |  | ||||||
| 		Title:        milestone.Name, |  | ||||||
| 		Description:  milestone.Content, |  | ||||||
| 		OpenIssues:   milestone.NumOpenIssues, |  | ||||||
| 		ClosedIssues: milestone.NumClosedIssues, |  | ||||||
| 	} |  | ||||||
| 	if milestone.IsClosed { |  | ||||||
| 		apiMilestone.Closed = &milestone.ClosedDate |  | ||||||
| 	} |  | ||||||
| 	if milestone.Deadline.Year() < 9999 { |  | ||||||
| 		apiMilestone.Deadline = &milestone.Deadline |  | ||||||
| 	} |  | ||||||
| 	return apiMilestone |  | ||||||
| } |  | ||||||
| 
 |  | ||||||
| func ToIssue(issue *models.Issue) *api.Issue { |  | ||||||
| 	apiLabels := make([]*api.Label, len(issue.Labels)) |  | ||||||
| 	for i := range issue.Labels { |  | ||||||
| 		apiLabels[i] = ToLabel(issue.Labels[i]) |  | ||||||
| 	} |  | ||||||
| 
 |  | ||||||
| 	apiIssue := &api.Issue{ |  | ||||||
| 		ID:        issue.ID, |  | ||||||
| 		Index:     issue.Index, |  | ||||||
| 		State:     issue.State(), |  | ||||||
| 		Title:     issue.Title, |  | ||||||
| 		Body:      issue.Content, |  | ||||||
| 		User:      ToUser(issue.Poster), |  | ||||||
| 		Labels:    apiLabels, |  | ||||||
| 		Assignee:  ToUser(issue.Assignee), |  | ||||||
| 		Milestone: ToMilestone(issue.Milestone), |  | ||||||
| 		Comments:  issue.NumComments, |  | ||||||
| 		Created:   issue.Created, |  | ||||||
| 		Updated:   issue.Updated, |  | ||||||
| 	} |  | ||||||
| 	if issue.IsPull { |  | ||||||
| 		apiIssue.PullRequest = &api.PullRequestMeta{ |  | ||||||
| 			HasMerged: issue.PullRequest.HasMerged, |  | ||||||
| 		} |  | ||||||
| 		if issue.PullRequest.HasMerged { |  | ||||||
| 			apiIssue.PullRequest.Merged = &issue.PullRequest.Merged |  | ||||||
| 		} |  | ||||||
| 	} |  | ||||||
| 
 |  | ||||||
| 	return apiIssue |  | ||||||
| } |  | ||||||
| 
 |  | ||||||
| func ToOrganization(org *models.User) *api.Organization { | func ToOrganization(org *models.User) *api.Organization { | ||||||
| 	return &api.Organization{ | 	return &api.Organization{ | ||||||
| 		ID:          org.ID, | 		ID:          org.ID, | ||||||
|  |  | ||||||
|  | @ -13,7 +13,6 @@ import ( | ||||||
| 	"github.com/gogits/gogs/models" | 	"github.com/gogits/gogs/models" | ||||||
| 	"github.com/gogits/gogs/modules/context" | 	"github.com/gogits/gogs/modules/context" | ||||||
| 	"github.com/gogits/gogs/modules/setting" | 	"github.com/gogits/gogs/modules/setting" | ||||||
| 	"github.com/gogits/gogs/routers/api/v1/convert" |  | ||||||
| ) | ) | ||||||
| 
 | 
 | ||||||
| func ListIssues(ctx *context.APIContext) { | func ListIssues(ctx *context.APIContext) { | ||||||
|  | @ -28,7 +27,12 @@ func ListIssues(ctx *context.APIContext) { | ||||||
| 
 | 
 | ||||||
| 	apiIssues := make([]*api.Issue, len(issues)) | 	apiIssues := make([]*api.Issue, len(issues)) | ||||||
| 	for i := range issues { | 	for i := range issues { | ||||||
| 		apiIssues[i] = convert.ToIssue(issues[i]) | 		// FIXME: use IssueList to improve performance.
 | ||||||
|  | 		if err = issues[i].LoadAttributes(); err != nil { | ||||||
|  | 			ctx.Error(500, "LoadAttributes", err) | ||||||
|  | 			return | ||||||
|  | 		} | ||||||
|  | 		apiIssues[i] = issues[i].APIFormat() | ||||||
| 	} | 	} | ||||||
| 
 | 
 | ||||||
| 	ctx.SetLinkHeader(ctx.Repo.Repository.NumIssues, setting.UI.IssuePagingNum) | 	ctx.SetLinkHeader(ctx.Repo.Repository.NumIssues, setting.UI.IssuePagingNum) | ||||||
|  | @ -46,13 +50,13 @@ func GetIssue(ctx *context.APIContext) { | ||||||
| 		return | 		return | ||||||
| 	} | 	} | ||||||
| 
 | 
 | ||||||
| 	ctx.JSON(200, convert.ToIssue(issue)) | 	ctx.JSON(200, issue.APIFormat()) | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
| func CreateIssue(ctx *context.APIContext, form api.CreateIssueOption) { | func CreateIssue(ctx *context.APIContext, form api.CreateIssueOption) { | ||||||
| 	issue := &models.Issue{ | 	issue := &models.Issue{ | ||||||
| 		RepoID:   ctx.Repo.Repository.ID, | 		RepoID:   ctx.Repo.Repository.ID, | ||||||
| 		Title:     form.Title, | 		Title:    form.Title, | ||||||
| 		PosterID: ctx.User.ID, | 		PosterID: ctx.User.ID, | ||||||
| 		Poster:   ctx.User, | 		Poster:   ctx.User, | ||||||
| 		Content:  form.Body, | 		Content:  form.Body, | ||||||
|  | @ -83,7 +87,7 @@ func CreateIssue(ctx *context.APIContext, form api.CreateIssueOption) { | ||||||
| 
 | 
 | ||||||
| 	if form.Closed { | 	if form.Closed { | ||||||
| 		if err := issue.ChangeStatus(ctx.User, ctx.Repo.Repository, true); err != nil { | 		if err := issue.ChangeStatus(ctx.User, ctx.Repo.Repository, true); err != nil { | ||||||
| 			ctx.Error(500, "issue.ChangeStatus", err) | 			ctx.Error(500, "ChangeStatus", err) | ||||||
| 			return | 			return | ||||||
| 		} | 		} | ||||||
| 	} | 	} | ||||||
|  | @ -95,7 +99,7 @@ func CreateIssue(ctx *context.APIContext, form api.CreateIssueOption) { | ||||||
| 		ctx.Error(500, "GetIssueByID", err) | 		ctx.Error(500, "GetIssueByID", err) | ||||||
| 		return | 		return | ||||||
| 	} | 	} | ||||||
| 	ctx.JSON(201, convert.ToIssue(issue)) | 	ctx.JSON(201, issue.APIFormat()) | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
| func EditIssue(ctx *context.APIContext, form api.EditIssueOption) { | func EditIssue(ctx *context.APIContext, form api.EditIssueOption) { | ||||||
|  | @ -164,5 +168,5 @@ func EditIssue(ctx *context.APIContext, form api.EditIssueOption) { | ||||||
| 		ctx.Error(500, "GetIssueByID", err) | 		ctx.Error(500, "GetIssueByID", err) | ||||||
| 		return | 		return | ||||||
| 	} | 	} | ||||||
| 	ctx.JSON(201, convert.ToIssue(issue)) | 	ctx.JSON(201, issue.APIFormat()) | ||||||
| } | } | ||||||
|  |  | ||||||
|  | @ -9,7 +9,6 @@ import ( | ||||||
| 
 | 
 | ||||||
| 	"github.com/gogits/gogs/models" | 	"github.com/gogits/gogs/models" | ||||||
| 	"github.com/gogits/gogs/modules/context" | 	"github.com/gogits/gogs/modules/context" | ||||||
| 	"github.com/gogits/gogs/routers/api/v1/convert" |  | ||||||
| ) | ) | ||||||
| 
 | 
 | ||||||
| func ListIssueLabels(ctx *context.APIContext) { | func ListIssueLabels(ctx *context.APIContext) { | ||||||
|  | @ -25,7 +24,7 @@ func ListIssueLabels(ctx *context.APIContext) { | ||||||
| 
 | 
 | ||||||
| 	apiLabels := make([]*api.Label, len(issue.Labels)) | 	apiLabels := make([]*api.Label, len(issue.Labels)) | ||||||
| 	for i := range issue.Labels { | 	for i := range issue.Labels { | ||||||
| 		apiLabels[i] = convert.ToLabel(issue.Labels[i]) | 		apiLabels[i] = issue.Labels[i].APIFormat() | ||||||
| 	} | 	} | ||||||
| 	ctx.JSON(200, &apiLabels) | 	ctx.JSON(200, &apiLabels) | ||||||
| } | } | ||||||
|  | @ -65,7 +64,7 @@ func AddIssueLabels(ctx *context.APIContext, form api.IssueLabelsOption) { | ||||||
| 
 | 
 | ||||||
| 	apiLabels := make([]*api.Label, len(labels)) | 	apiLabels := make([]*api.Label, len(labels)) | ||||||
| 	for i := range labels { | 	for i := range labels { | ||||||
| 		apiLabels[i] = convert.ToLabel(labels[i]) | 		apiLabels[i] = issue.Labels[i].APIFormat() | ||||||
| 	} | 	} | ||||||
| 	ctx.JSON(200, &apiLabels) | 	ctx.JSON(200, &apiLabels) | ||||||
| } | } | ||||||
|  | @ -139,7 +138,7 @@ func ReplaceIssueLabels(ctx *context.APIContext, form api.IssueLabelsOption) { | ||||||
| 
 | 
 | ||||||
| 	apiLabels := make([]*api.Label, len(labels)) | 	apiLabels := make([]*api.Label, len(labels)) | ||||||
| 	for i := range labels { | 	for i := range labels { | ||||||
| 		apiLabels[i] = convert.ToLabel(labels[i]) | 		apiLabels[i] = issue.Labels[i].APIFormat() | ||||||
| 	} | 	} | ||||||
| 	ctx.JSON(200, &apiLabels) | 	ctx.JSON(200, &apiLabels) | ||||||
| } | } | ||||||
|  |  | ||||||
|  | @ -9,7 +9,6 @@ import ( | ||||||
| 
 | 
 | ||||||
| 	"github.com/gogits/gogs/models" | 	"github.com/gogits/gogs/models" | ||||||
| 	"github.com/gogits/gogs/modules/context" | 	"github.com/gogits/gogs/modules/context" | ||||||
| 	"github.com/gogits/gogs/routers/api/v1/convert" |  | ||||||
| ) | ) | ||||||
| 
 | 
 | ||||||
| func ListLabels(ctx *context.APIContext) { | func ListLabels(ctx *context.APIContext) { | ||||||
|  | @ -21,7 +20,7 @@ func ListLabels(ctx *context.APIContext) { | ||||||
| 
 | 
 | ||||||
| 	apiLabels := make([]*api.Label, len(labels)) | 	apiLabels := make([]*api.Label, len(labels)) | ||||||
| 	for i := range labels { | 	for i := range labels { | ||||||
| 		apiLabels[i] = convert.ToLabel(labels[i]) | 		apiLabels[i] = labels[i].APIFormat() | ||||||
| 	} | 	} | ||||||
| 	ctx.JSON(200, &apiLabels) | 	ctx.JSON(200, &apiLabels) | ||||||
| } | } | ||||||
|  | @ -37,7 +36,7 @@ func GetLabel(ctx *context.APIContext) { | ||||||
| 		return | 		return | ||||||
| 	} | 	} | ||||||
| 
 | 
 | ||||||
| 	ctx.JSON(200, convert.ToLabel(label)) | 	ctx.JSON(200, label.APIFormat()) | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
| func CreateLabel(ctx *context.APIContext, form api.CreateLabelOption) { | func CreateLabel(ctx *context.APIContext, form api.CreateLabelOption) { | ||||||
|  | @ -55,7 +54,7 @@ func CreateLabel(ctx *context.APIContext, form api.CreateLabelOption) { | ||||||
| 		ctx.Error(500, "NewLabel", err) | 		ctx.Error(500, "NewLabel", err) | ||||||
| 		return | 		return | ||||||
| 	} | 	} | ||||||
| 	ctx.JSON(201, convert.ToLabel(label)) | 	ctx.JSON(201, label.APIFormat()) | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
| func EditLabel(ctx *context.APIContext, form api.EditLabelOption) { | func EditLabel(ctx *context.APIContext, form api.EditLabelOption) { | ||||||
|  | @ -84,7 +83,7 @@ func EditLabel(ctx *context.APIContext, form api.EditLabelOption) { | ||||||
| 		ctx.Handle(500, "UpdateLabel", err) | 		ctx.Handle(500, "UpdateLabel", err) | ||||||
| 		return | 		return | ||||||
| 	} | 	} | ||||||
| 	ctx.JSON(200, convert.ToLabel(label)) | 	ctx.JSON(200, label.APIFormat()) | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
| func DeleteLabel(ctx *context.APIContext) { | func DeleteLabel(ctx *context.APIContext) { | ||||||
|  |  | ||||||
|  | @ -93,12 +93,12 @@ func ListMyRepos(ctx *context.APIContext) { | ||||||
| 
 | 
 | ||||||
| 	repos := make([]*api.Repository, numOwnRepos+len(accessibleRepos)) | 	repos := make([]*api.Repository, numOwnRepos+len(accessibleRepos)) | ||||||
| 	for i := range ownRepos { | 	for i := range ownRepos { | ||||||
| 		repos[i] = convert.ToRepository(ctx.User, ownRepos[i], api.Permission{true, true, true}) | 		repos[i] = ownRepos[i].APIFormat(&api.Permission{true, true, true}) | ||||||
| 	} | 	} | ||||||
| 	i := numOwnRepos | 	i := numOwnRepos | ||||||
| 
 | 
 | ||||||
| 	for repo, access := range accessibleRepos { | 	for repo, access := range accessibleRepos { | ||||||
| 		repos[i] = convert.ToRepository(repo.Owner, repo, api.Permission{ | 		repos[i] = repo.APIFormat(&api.Permission{ | ||||||
| 			Admin: access >= models.ACCESS_MODE_ADMIN, | 			Admin: access >= models.ACCESS_MODE_ADMIN, | ||||||
| 			Push:  access >= models.ACCESS_MODE_WRITE, | 			Push:  access >= models.ACCESS_MODE_WRITE, | ||||||
| 			Pull:  true, | 			Pull:  true, | ||||||
|  | @ -135,7 +135,7 @@ func CreateUserRepo(ctx *context.APIContext, owner *models.User, opt api.CreateR | ||||||
| 		return | 		return | ||||||
| 	} | 	} | ||||||
| 
 | 
 | ||||||
| 	ctx.JSON(201, convert.ToRepository(owner, repo, api.Permission{true, true, true})) | 	ctx.JSON(201, repo.APIFormat(&api.Permission{true, true, true})) | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
| // https://github.com/gogits/go-gogs-client/wiki/Repositories#create
 | // https://github.com/gogits/go-gogs-client/wiki/Repositories#create
 | ||||||
|  | @ -235,7 +235,7 @@ func Migrate(ctx *context.APIContext, form auth.MigrateRepoForm) { | ||||||
| 	} | 	} | ||||||
| 
 | 
 | ||||||
| 	log.Trace("Repository migrated: %s/%s", ctxUser.Name, form.RepoName) | 	log.Trace("Repository migrated: %s/%s", ctxUser.Name, form.RepoName) | ||||||
| 	ctx.JSON(201, convert.ToRepository(ctxUser, repo, api.Permission{true, true, true})) | 	ctx.JSON(201, repo.APIFormat(&api.Permission{true, true, true})) | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
| func parseOwnerAndRepo(ctx *context.APIContext) (*models.User, *models.Repository) { | func parseOwnerAndRepo(ctx *context.APIContext) (*models.User, *models.Repository) { | ||||||
|  | @ -264,12 +264,12 @@ func parseOwnerAndRepo(ctx *context.APIContext) (*models.User, *models.Repositor | ||||||
| 
 | 
 | ||||||
| // https://github.com/gogits/go-gogs-client/wiki/Repositories#get
 | // https://github.com/gogits/go-gogs-client/wiki/Repositories#get
 | ||||||
| func Get(ctx *context.APIContext) { | func Get(ctx *context.APIContext) { | ||||||
| 	owner, repo := parseOwnerAndRepo(ctx) | 	_, repo := parseOwnerAndRepo(ctx) | ||||||
| 	if ctx.Written() { | 	if ctx.Written() { | ||||||
| 		return | 		return | ||||||
| 	} | 	} | ||||||
| 
 | 
 | ||||||
| 	ctx.JSON(200, convert.ToRepository(owner, repo, api.Permission{true, true, true})) | 	ctx.JSON(200, repo.APIFormat(&api.Permission{true, true, true})) | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
| // https://github.com/gogits/go-gogs-client/wiki/Repositories#delete
 | // https://github.com/gogits/go-gogs-client/wiki/Repositories#delete
 | ||||||
|  |  | ||||||
|  | @ -9,13 +9,12 @@ import ( | ||||||
| 
 | 
 | ||||||
| 	"github.com/gogits/gogs/models" | 	"github.com/gogits/gogs/models" | ||||||
| 	"github.com/gogits/gogs/modules/context" | 	"github.com/gogits/gogs/modules/context" | ||||||
| 	"github.com/gogits/gogs/routers/api/v1/convert" |  | ||||||
| ) | ) | ||||||
| 
 | 
 | ||||||
| func responseApiUsers(ctx *context.APIContext, users []*models.User) { | func responseApiUsers(ctx *context.APIContext, users []*models.User) { | ||||||
| 	apiUsers := make([]*api.User, len(users)) | 	apiUsers := make([]*api.User, len(users)) | ||||||
| 	for i := range users { | 	for i := range users { | ||||||
| 		apiUsers[i] = convert.ToUser(users[i]) | 		apiUsers[i] = users[i].APIFormat() | ||||||
| 	} | 	} | ||||||
| 	ctx.JSON(200, &apiUsers) | 	ctx.JSON(200, &apiUsers) | ||||||
| } | } | ||||||
|  |  | ||||||
|  | @ -11,7 +11,6 @@ import ( | ||||||
| 
 | 
 | ||||||
| 	"github.com/gogits/gogs/models" | 	"github.com/gogits/gogs/models" | ||||||
| 	"github.com/gogits/gogs/modules/context" | 	"github.com/gogits/gogs/modules/context" | ||||||
| 	"github.com/gogits/gogs/routers/api/v1/convert" |  | ||||||
| ) | ) | ||||||
| 
 | 
 | ||||||
| func Search(ctx *context.APIContext) { | func Search(ctx *context.APIContext) { | ||||||
|  | @ -67,9 +66,9 @@ func GetInfo(ctx *context.APIContext) { | ||||||
| 	if !ctx.IsSigned { | 	if !ctx.IsSigned { | ||||||
| 		u.Email = "" | 		u.Email = "" | ||||||
| 	} | 	} | ||||||
| 	ctx.JSON(200, convert.ToUser(u)) | 	ctx.JSON(200, u.APIFormat()) | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
| func GetAuthenticatedUser(ctx *context.APIContext) { | func GetAuthenticatedUser(ctx *context.APIContext) { | ||||||
| 	ctx.JSON(200, convert.ToUser(ctx.User)) | 	ctx.JSON(200, ctx.User.APIFormat()) | ||||||
| } | } | ||||||
|  |  | ||||||
|  | @ -20,6 +20,8 @@ import ( | ||||||
| 	"strings" | 	"strings" | ||||||
| 	"time" | 	"time" | ||||||
| 
 | 
 | ||||||
|  | 	git "github.com/gogits/git-module" | ||||||
|  | 
 | ||||||
| 	"github.com/gogits/gogs/models" | 	"github.com/gogits/gogs/models" | ||||||
| 	"github.com/gogits/gogs/modules/base" | 	"github.com/gogits/gogs/modules/base" | ||||||
| 	"github.com/gogits/gogs/modules/context" | 	"github.com/gogits/gogs/modules/context" | ||||||
|  | @ -206,7 +208,7 @@ func HTTP(ctx *context.Context) { | ||||||
| 						RepoName:     reponame, | 						RepoName:     reponame, | ||||||
| 					}); err == nil { | 					}); err == nil { | ||||||
| 						go models.HookQueue.Add(repo.ID) | 						go models.HookQueue.Add(repo.ID) | ||||||
| 						go models.AddTestPullRequestTask(authUser, repo.ID, strings.TrimPrefix(refName, "refs/heads/"), true) | 						go models.AddTestPullRequestTask(authUser, repo.ID, strings.TrimPrefix(refName, git.BRANCH_PREFIX), true) | ||||||
| 					} | 					} | ||||||
| 
 | 
 | ||||||
| 				} | 				} | ||||||
|  |  | ||||||
|  | @ -347,6 +347,7 @@ func SlackHooksEditPost(ctx *context.Context, form auth.NewSlackHookForm) { | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
| func TestWebhook(ctx *context.Context) { | func TestWebhook(ctx *context.Context) { | ||||||
|  | 	apiUser := ctx.User.APIFormat() | ||||||
| 	p := &api.PushPayload{ | 	p := &api.PushPayload{ | ||||||
| 		Ref:    git.BRANCH_PREFIX + ctx.Repo.Repository.DefaultBranch, | 		Ref:    git.BRANCH_PREFIX + ctx.Repo.Repository.DefaultBranch, | ||||||
| 		Before: ctx.Repo.CommitID, | 		Before: ctx.Repo.CommitID, | ||||||
|  | @ -356,27 +357,19 @@ func TestWebhook(ctx *context.Context) { | ||||||
| 				ID:      ctx.Repo.CommitID, | 				ID:      ctx.Repo.CommitID, | ||||||
| 				Message: ctx.Repo.Commit.Message(), | 				Message: ctx.Repo.Commit.Message(), | ||||||
| 				URL:     ctx.Repo.Repository.FullLink() + "/commit/" + ctx.Repo.CommitID, | 				URL:     ctx.Repo.Repository.FullLink() + "/commit/" + ctx.Repo.CommitID, | ||||||
| 				Author: &api.PayloadAuthor{ | 				Author: &api.PayloadUser{ | ||||||
| 					Name:  ctx.Repo.Commit.Author.Name, | 					Name:  ctx.Repo.Commit.Author.Name, | ||||||
| 					Email: ctx.Repo.Commit.Author.Email, | 					Email: ctx.Repo.Commit.Author.Email, | ||||||
| 				}, | 				}, | ||||||
| 				Committer: &api.PayloadCommitter{ | 				Committer: &api.PayloadUser{ | ||||||
| 					Name:  ctx.Repo.Commit.Committer.Name, | 					Name:  ctx.Repo.Commit.Committer.Name, | ||||||
| 					Email: ctx.Repo.Commit.Committer.Email, | 					Email: ctx.Repo.Commit.Committer.Email, | ||||||
| 				}, | 				}, | ||||||
| 			}, | 			}, | ||||||
| 		}, | 		}, | ||||||
| 		Repo: ctx.Repo.Repository.ComposePayload(), | 		Repo:   ctx.Repo.Repository.APIFormat(nil), | ||||||
| 		Pusher: &api.PayloadAuthor{ | 		Pusher: apiUser, | ||||||
| 			Name:     ctx.User.Name, | 		Sender: apiUser, | ||||||
| 			Email:    ctx.User.Email, |  | ||||||
| 			UserName: ctx.User.Name, |  | ||||||
| 		}, |  | ||||||
| 		Sender: &api.PayloadUser{ |  | ||||||
| 			UserName:  ctx.User.Name, |  | ||||||
| 			ID:        ctx.User.ID, |  | ||||||
| 			AvatarUrl: ctx.User.AvatarLink(), |  | ||||||
| 		}, |  | ||||||
| 	} | 	} | ||||||
| 	if err := models.PrepareWebhooks(ctx.Repo.Repository, models.HOOK_EVENT_PUSH, p); err != nil { | 	if err := models.PrepareWebhooks(ctx.Repo.Repository, models.HOOK_EVENT_PUSH, p); err != nil { | ||||||
| 		ctx.Flash.Error("PrepareWebhooks: " + err.Error()) | 		ctx.Flash.Error("PrepareWebhooks: " + err.Error()) | ||||||
|  |  | ||||||
|  | @ -1 +1 @@ | ||||||
| 0.9.76.0814 | 0.9.77.0814 | ||||||
		Loading…
	
		Reference in a new issue