File name
Commit message
Commit date
File name
Commit message
Commit date
File name
Commit message
Commit date
File name
Commit message
Commit date
File name
Commit message
Commit date
@**
* Yobi, Project Hosting SW
*
* Copyright 2013 NAVER Corp.
* http://yobi.io
*
* @author Keesun Baik
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
**@
@(project: Project, pull: PullRequest, menuType:String = "overview")
@import utils.JodaDateUtil._
@import utils.TemplateHelper._
@import utils.AccessControl._
@import models.enumeration
@import scala.collection.JavaConversions._
<div class="board-header issue">
<div class="pull-right mr10 mt10">
<div class="date" title="@utils.JodaDateUtil.getDateString(pull.created)">
@agoOrDateString(pull.created)
</div>
<span class="badge nm @if(pull.isConflict == true) {badge-issue-conflict} else {badge-issue-@pull.state.state.toLowerCase}">@if(pull.isConflict == true) {@Messages("pullRequest.state.conflict")} else {@Messages("pullRequest.state." + pull.state.state)}</span>
</div>
<div class="title">
<strong class="board-id">#@pull.number</strong> @pull.title
</div>
</div>
<div class="pull-right">
@if(project.isUsingReviewerCount && isAllowed(UserApp.currentUser(), pull.asResource(), Operation.ACCEPT)){
<div id="reviewers" style="display:inline-block; margin-right:5px;">
<span style="font-size: 13px; vertical-align: middle; margin: 0 10px;">
@Html(Messages("pullRequest.review.participants", pull.reviewers.size))
</span>
@for(reviewer <- pull.reviewers) {
@Html(getUserAvatar(reviewer))
}
</div>
@if(pull.isOpen) {
@if(pull.isReviewedBy(UserApp.currentUser())) {
<a data-request-method="post" class="ybtn ybtn-default" href="@routes.ReviewApp.unreview(project.owner, project.name, pull.number)">
@Messages("pullRequest.unreview")
</a>
} else {
<a data-request-method="post" class="ybtn @if(pull.isReviewed) {ybtn-default} else {ybtn-success}" href="@routes.ReviewApp.review(project.owner, project.name, pull.number)">
@Messages("pullRequest.review")
</a>
}
}
}
@if(isAllowed(UserApp.currentUser(), pull.asResource(), Operation.ACCEPT)) {
@if(pull.isAcceptable){
<a id="btnAccept" href="@routes.PullRequestApp.accept(project.owner, project.name, pull.number)" data-request-method="post"
class="ybtn ybtn-success">@Messages("pullRequest.merge")</a>
} else {
<button class="ybtn ybtn-disabled" data-toggle="tooltip" data-placement="top"
title="@pull.getMessageForDisabledAcceptButton">@Messages("pullRequest.merge")</button>
}
}
</div>
<ul class="nav nav-tabs nm">
<li @if(menuType.equals("overview")){class="active"}>
<a href="@routes.PullRequestApp.pullRequest(project.owner, project.name, pull.number)">@Messages("pullRequest.menu.overview")</a>
</li>
<li @if(menuType.equals("changes")){class="active"}>
<a href="@routes.PullRequestApp.pullRequestChanges(project.owner, project.name, pull.number)">
@Messages("pullRequest.menu.changes")
@defining(pull.countCommentThreadsByState(CommentThread.ThreadState.OPEN)) { countOpenThreads =>
@if(countOpenThreads > 0) {
<span class="num-badge">@countOpenThreads</span>
}
}
</a>
</li>
</ul>