(refs #378)Closed but not merged pull requests should be re-openable

This commit is contained in:
Naoki Takezoe
2014-06-02 21:28:20 +09:00
parent 1edff41690
commit 0fa1e11c5a
3 changed files with 51 additions and 48 deletions

View File

@@ -1,4 +1,5 @@
@(issue: model.Issue, @(issue: model.Issue,
reopenable: Boolean,
hasWritePermission: Boolean, hasWritePermission: Boolean,
repository: service.RepositoryService.RepositoryInfo)(implicit context: app.Context) repository: service.RepositoryService.RepositoryInfo)(implicit context: app.Context)
@import context._ @import context._
@@ -14,7 +15,7 @@
<div class="pull-right"> <div class="pull-right">
<input type="hidden" name="issueId" value="@issue.issueId"/> <input type="hidden" name="issueId" value="@issue.issueId"/>
<input type="submit" class="btn btn-success" formaction="@url(repository)/issue_comments/new" value="Comment"/> <input type="submit" class="btn btn-success" formaction="@url(repository)/issue_comments/new" value="Comment"/>
@if((!issue.isPullRequest || !issue.closed) && (hasWritePermission || issue.openedUserName == loginAccount.get.userName)){ @if((reopenable || !issue.closed) && (hasWritePermission || issue.openedUserName == loginAccount.get.userName)){
<input type="submit" class="btn" formaction="@url(repository)/issue_comments/state" value="@{if(issue.closed) "Reopen" else "Close"}" id="action"/> <input type="submit" class="btn" formaction="@url(repository)/issue_comments/state" value="@{if(issue.closed) "Reopen" else "Close"}" id="action"/>
} }
</div> </div>

View File

@@ -19,7 +19,7 @@
<div class="span10"> <div class="span10">
@issuedetail(issue, comments, collaborators, milestones, hasWritePermission, repository) @issuedetail(issue, comments, collaborators, milestones, hasWritePermission, repository)
@commentlist(issue, comments, hasWritePermission, repository) @commentlist(issue, comments, hasWritePermission, repository)
@commentform(issue, hasWritePermission, repository) @commentform(issue, true, hasWritePermission, repository)
</div> </div>
<div class="span2"> <div class="span2">
@if(issue.closed) { @if(issue.closed) {

View File

@@ -13,57 +13,59 @@
<div class="span10"> <div class="span10">
@issues.html.issuedetail(issue, comments, collaborators, milestones, hasWritePermission, repository) @issues.html.issuedetail(issue, comments, collaborators, milestones, hasWritePermission, repository)
@issues.html.commentlist(issue, comments, hasWritePermission, repository, Some(pullreq)) @issues.html.commentlist(issue, comments, hasWritePermission, repository, Some(pullreq))
@if(hasWritePermission && !issue.closed){ @defining(comments.exists(_.action == "merge")){ merged =>
<div class="box issue-comment-box" style="background-color: #d8f5cd;"> @if(hasWritePermission && !issue.closed){
<div class="box-content"class="issue-content" style="border: 1px solid #95c97e; padding: 10px;"> <div class="box issue-comment-box" style="background-color: #d8f5cd;">
<div id="merge-pull-request"> <div class="box-content"class="issue-content" style="border: 1px solid #95c97e; padding: 10px;">
<div class="check-conflict" style="display: none;"> <div id="merge-pull-request">
<img src="@assets/common/images/indicator.gif"/> Checking... <div class="check-conflict" style="display: none;">
<img src="@assets/common/images/indicator.gif"/> Checking...
</div>
</div>
<div id="confirm-merge-form" style="display: none;">
<form method="POST" action="@url(repository)/pull/@issue.issueId/merge">
<div class="strong">
Merge pull request #@issue.issueId from @{pullreq.requestUserName}/@{pullreq.requestBranch}
</div>
<span id="error-message" class="error"></span>
<textarea name="message" style="width: 635px; height: 80px;">@issue.title</textarea>
<div>
<input type="button" class="btn" value="Cancel" id="cancel-merge-pull-request"/>
<input type="submit" class="btn btn-success" value="Confirm merge"/>
</div>
</form>
</div> </div>
</div> </div>
<div id="confirm-merge-form" style="display: none;">
<form method="POST" action="@url(repository)/pull/@issue.issueId/merge">
<div class="strong">
Merge pull request #@issue.issueId from @{pullreq.requestUserName}/@{pullreq.requestBranch}
</div>
<span id="error-message" class="error"></span>
<textarea name="message" style="width: 635px; height: 80px;">@issue.title</textarea>
<div>
<input type="button" class="btn" value="Cancel" id="cancel-merge-pull-request"/>
<input type="submit" class="btn btn-success" value="Confirm merge"/>
</div>
</form>
</div>
</div> </div>
</div>
}
@if(hasWritePermission && issue.closed && pullreq.userName == pullreq.requestUserName &&
pullreq.repositoryName == pullreq.requestRepositoryName && repository.branchList.contains(pullreq.requestBranch)){
<div class="box issue-comment-box" style="background-color: #d0eeff;">
<div class="box-content"class="issue-content" style="border: 1px solid #87a8c9; padding: 10px;">
<a href="@url(repository)/pull/@issue.issueId/delete/@pullreq.requestBranch" class="btn btn-info pull-right delete-branch" data-name="@pullreq.requestBranch">Delete branch</a>
<div>
<span class="strong">Pull request successfully merged and closed</span>
</div>
<span class="small muted">You're all set-the <span class="label label-info monospace">@pullreq.requestBranch</span> branch can be safely deleted.</span>
</div>
</div>
}
@issues.html.commentform(issue, hasWritePermission, repository)
</div>
<div class="span2">
@if(issue.closed) {
@if(comments.exists(_.action == "merge")){
<span class="label label-info issue-status">Merged</span>
} else {
<span class="label label-important issue-status">Closed</span>
} }
} else { @if(hasWritePermission && issue.closed && pullreq.userName == pullreq.requestUserName &&
<span class="label label-success issue-status">Open</span> pullreq.repositoryName == pullreq.requestRepositoryName && repository.branchList.contains(pullreq.requestBranch)){
} <div class="box issue-comment-box" style="background-color: #d0eeff;">
<div class="small" style="text-align: center;"> <div class="box-content"class="issue-content" style="border: 1px solid #87a8c9; padding: 10px;">
<span class="strong">@comments.size</span> @plural(comments.size, "comment") <a href="@url(repository)/pull/@issue.issueId/delete/@pullreq.requestBranch" class="btn btn-info pull-right delete-branch" data-name="@pullreq.requestBranch">Delete branch</a>
<div>
<span class="strong">Pull request successfully merged and closed</span>
</div>
<span class="small muted">You're all set-the <span class="label label-info monospace">@pullreq.requestBranch</span> branch can be safely deleted.</span>
</div>
</div>
}
@issues.html.commentform(issue, !merged, hasWritePermission, repository)
</div> </div>
<div class="span2">
@if(issue.closed) {
@if(merged){
<span class="label label-info issue-status">Merged</span>
} else {
<span class="label label-important issue-status">Closed</span>
}
} else {
<span class="label label-success issue-status">Open</span>
}
<div class="small" style="text-align: center;">
<span class="strong">@comments.size</span> @plural(comments.size, "comment")
</div>
}
<hr/> <hr/>
@issues.html.labels(issue, issueLabels, labels, hasWritePermission, repository) @issues.html.labels(issue, issueLabels, labels, hasWritePermission, repository)
</div> </div>