Skip to content

Commit a1b9228

Browse files
committed
More refactor
1 parent c4598af commit a1b9228

File tree

2 files changed

+42
-45
lines changed

2 files changed

+42
-45
lines changed

routers/web/repo/issue_view.go

Lines changed: 21 additions & 28 deletions
Original file line numberDiff line numberDiff line change
@@ -341,40 +341,25 @@ func ViewIssue(ctx *context.Context) {
341341

342342
ctx.Data["Title"] = fmt.Sprintf("#%d - %s", issue.Index, emoji.ReplaceAliases(issue.Title))
343343

344-
repo := ctx.Repo.Repository
345-
if prepareIssueViewContent(ctx, issue) {
346-
return
347-
}
348-
349-
// Get more information if it's a pull request.
350-
if issue.IsPull {
351-
if issue.PullRequest.HasMerged {
352-
ctx.Data["DisableStatusChange"] = issue.PullRequest.HasMerged
353-
PrepareMergedViewPullInfo(ctx, issue)
354-
} else {
355-
PrepareViewPullInfo(ctx, issue)
356-
ctx.Data["DisableStatusChange"] = ctx.Data["IsPullRequestBroken"] == true && issue.IsClosed
357-
}
358-
if ctx.Written() {
344+
if ctx.IsSigned {
345+
// Update issue-user.
346+
if err = activities_model.SetIssueReadBy(ctx, issue.ID, ctx.Doer.ID); err != nil {
347+
ctx.ServerError("ReadBy", err)
359348
return
360349
}
361350
}
362351

363-
pageMetaData := retrieveRepoIssueMetaData(ctx, repo, issue, issue.IsPull)
352+
pageMetaData := retrieveRepoIssueMetaData(ctx, ctx.Repo.Repository, issue, issue.IsPull)
364353
if ctx.Written() {
365354
return
366355
}
367356
pageMetaData.LabelsData.SetSelectedLabels(issue.Labels)
368357

369-
if ctx.IsSigned {
370-
// Update issue-user.
371-
if err = activities_model.SetIssueReadBy(ctx, issue.ID, ctx.Doer.ID); err != nil {
372-
ctx.ServerError("ReadBy", err)
373-
return
374-
}
375-
}
376-
377358
prepareFuncs := []func(*context.Context, *issues_model.Issue){
359+
prepareIssueViewContent,
360+
func(ctx *context.Context, issue *issues_model.Issue) {
361+
preparePullViewPullInfo(ctx, issue)
362+
},
378363
prepareIssueViewCommentsAndSidebarParticipants,
379364
preparePullViewReviewAndMerge,
380365
prepareIssueViewSidebarWatch,
@@ -390,6 +375,15 @@ func ViewIssue(ctx *context.Context) {
390375
}
391376
}
392377

378+
// Get more information if it's a pull request.
379+
if issue.IsPull {
380+
if issue.PullRequest.HasMerged {
381+
ctx.Data["DisableStatusChange"] = issue.PullRequest.HasMerged
382+
} else {
383+
ctx.Data["DisableStatusChange"] = ctx.Data["IsPullRequestBroken"] == true && issue.IsClosed
384+
}
385+
}
386+
393387
ctx.Data["Reference"] = issue.Ref
394388
ctx.Data["SignInLink"] = setting.AppSubURL + "/user/login?redirect_to=" + url.QueryEscape(ctx.Data["Link"].(string))
395389
ctx.Data["IsIssuePoster"] = ctx.IsSigned && issue.IsPoster(ctx.Doer.ID)
@@ -931,18 +925,17 @@ func preparePullViewReviewAndMerge(ctx *context.Context, issue *issues_model.Iss
931925
}
932926
}
933927

934-
func prepareIssueViewContent(ctx *context.Context, issue *issues_model.Issue) bool {
928+
func prepareIssueViewContent(ctx *context.Context, issue *issues_model.Issue) {
935929
var err error
936930
rctx := renderhelper.NewRenderContextRepoComment(ctx, ctx.Repo.Repository)
937931
issue.RenderedContent, err = markdown.RenderString(rctx, issue.Content)
938932
if err != nil {
939933
ctx.ServerError("RenderString", err)
940-
return true
934+
return
941935
}
942936
if issue.ShowRole, err = roleDescriptor(ctx, issue.Repo, issue.Poster, issue, issue.HasOriginalAuthor()); err != nil {
943937
ctx.ServerError("roleDescriptor", err)
944-
return true
938+
return
945939
}
946940
ctx.Data["Issue"] = issue
947-
return false
948941
}

routers/web/repo/pull.go

Lines changed: 21 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -263,8 +263,18 @@ func GetMergedBaseCommitID(ctx *context.Context, issue *issues_model.Issue) stri
263263
return baseCommit
264264
}
265265

266-
// PrepareMergedViewPullInfo show meta information for a merged pull request view page
267-
func PrepareMergedViewPullInfo(ctx *context.Context, issue *issues_model.Issue) *git.CompareInfo {
266+
func preparePullViewPullInfo(ctx *context.Context, issue *issues_model.Issue) *git.CompareInfo {
267+
if !issue.IsPull {
268+
return nil
269+
}
270+
if issue.PullRequest.HasMerged {
271+
return prepareMergedViewPullInfo(ctx, issue)
272+
}
273+
return prepareViewPullInfo(ctx, issue)
274+
}
275+
276+
// prepareMergedViewPullInfo show meta information for a merged pull request view page
277+
func prepareMergedViewPullInfo(ctx *context.Context, issue *issues_model.Issue) *git.CompareInfo {
268278
pull := issue.PullRequest
269279

270280
setMergeTarget(ctx, pull)
@@ -309,8 +319,8 @@ func PrepareMergedViewPullInfo(ctx *context.Context, issue *issues_model.Issue)
309319
return compareInfo
310320
}
311321

312-
// PrepareViewPullInfo show meta information for a pull request preview page
313-
func PrepareViewPullInfo(ctx *context.Context, issue *issues_model.Issue) *git.CompareInfo {
322+
// prepareViewPullInfo show meta information for a pull request preview page
323+
func prepareViewPullInfo(ctx *context.Context, issue *issues_model.Issue) *git.CompareInfo {
314324
ctx.Data["PullRequestWorkInProgressPrefixes"] = setting.Repository.PullRequest.WorkInProgressPrefixes
315325

316326
repo := ctx.Repo.Repository
@@ -610,15 +620,8 @@ func ViewPullCommits(ctx *context.Context) {
610620
if !ok {
611621
return
612622
}
613-
pull := issue.PullRequest
614-
615-
var prInfo *git.CompareInfo
616-
if pull.HasMerged {
617-
prInfo = PrepareMergedViewPullInfo(ctx, issue)
618-
} else {
619-
prInfo = PrepareViewPullInfo(ctx, issue)
620-
}
621623

624+
prInfo := preparePullViewPullInfo(ctx, issue)
622625
if ctx.Written() {
623626
return
624627
} else if prInfo == nil {
@@ -662,11 +665,12 @@ func viewPullFiles(ctx *context.Context, specifiedStartCommit, specifiedEndCommi
662665
gitRepo = ctx.Repo.GitRepo
663666
)
664667

665-
var prInfo *git.CompareInfo
666-
if pull.HasMerged {
667-
prInfo = PrepareMergedViewPullInfo(ctx, issue)
668-
} else {
669-
prInfo = PrepareViewPullInfo(ctx, issue)
668+
prInfo := preparePullViewPullInfo(ctx, issue)
669+
if ctx.Written() {
670+
return
671+
} else if prInfo == nil {
672+
ctx.NotFound("ViewPullFiles", nil)
673+
return
670674
}
671675

672676
// Validate the given commit sha to show (if any passed)

0 commit comments

Comments
 (0)