(refs #11) Add button for batch update.

This commit is contained in:
shimamoto
2013-07-10 12:13:19 +09:00
parent e4324258d3
commit 240a749b87
4 changed files with 67 additions and 26 deletions

View File

@@ -1,7 +1,11 @@
@(body: Html)
@(buttonValue: String = "")(body: Html)
<div class="btn-group">
<button class="btn btn-mini dropdown-toggle" data-toggle="dropdown">
@if(buttonValue == ""){
<i class="icon-cog"></i>
} else {
<strong>@buttonValue</strong>
}
<span class="caret"></span>
</button>
<ul class="dropdown-menu">

View File

@@ -19,7 +19,7 @@
<span id="label-assigned">No one is assigned</span>
@if(hasWritePermission){
<input type="hidden" name="assignedUserName" value=""/>
@helper.html.dropdown {
@helper.html.dropdown() {
<li><a href="javascript:void(0);" class="assign" data-name=""><i class="icon-remove-circle"></i> Clear assignee</a></li>
<li class="divider"></li>
@collaborators.map { collaborator =>
@@ -31,7 +31,7 @@
<span id="label-milestone">No milestone</span>
@if(hasWritePermission){
<input type="hidden" name="milestoneId" value=""/>
@helper.html.dropdown {
@helper.html.dropdown() {
<li><a href="javascript:void(0);" class="milestone" data-id=""><i class="icon-remove-circle"></i> No milestone</a></li>
<li class="divider"></li>
@milestones.map { milestone =>

View File

@@ -35,7 +35,7 @@
}.getOrElse("No one is assigned")
</span>
@if(hasWritePermission){
@helper.html.dropdown {
@helper.html.dropdown() {
<li><a href="javascript:void(0);" class="assign" data-name=""><i class="icon-remove-circle"></i> Clear assignee</a></li>
<li class="divider"></li>
@collaborators.map { collaborator =>
@@ -52,7 +52,7 @@
}.getOrElse("No milestone")
</span>
@if(hasWritePermission){
@helper.html.dropdown {
@helper.html.dropdown() {
<li><a href="javascript:void(0);" class="milestone" data-id=""><i class="icon-remove-circle"></i> No milestone</a></li>
<li class="divider"></li>
@milestones.map { milestone =>
@@ -124,7 +124,7 @@
<strong>Labels</strong>
@if(hasWritePermission){
<div class="pull-right">
@helper.html.dropdown {
@helper.html.dropdown() {
@labels.map { label =>
<li>
<a href="#" class="toggle-label" data-label-id="@label.labelId">
@@ -134,7 +134,6 @@
</a>
</li>
}
</ul>
}
</div>
}

View File

@@ -51,7 +51,7 @@
<span class="muted small">Milestone:</span> @milestones.find(_.milestoneId == condition.milestoneId.get.get).map(_.title)
}
}
@helper.html.dropdown {
@helper.html.dropdown() {
@if(condition.milestoneId.isDefined){
<li>
<a href="@condition.copy(milestoneId = None).toURL">
@@ -166,9 +166,53 @@
</ul>
</div>
<table class="table table-bordered table-hover table-issues">
@if(issues.isEmpty){
<tr>
<td style="padding: 20px; background-color: #eee; text-align: center;">
No issues to show.
@if(condition.labels.nonEmpty || condition.milestoneId.isDefined){
<a href="@condition.copy(labels = Set.empty, milestoneId = None).toURL">Clear active filters.</a>
} else {
<a href="@url(repository)/issues/new">Create a new issue.</a>
}
</td>
</tr>
} else {
<tr>
<td style="background-color: #eee;">
<div class="btn-group">
<button class="btn btn-mini"><strong>@if(condition.state == "open"){ Close } else { Reopen }</strong></button>
</div>
@helper.html.dropdown("Label") {
@labels.map { label =>
<li>
<a href="javascript:void(0);" class="toggle-label" data-label-id="@label.labelId">
<i class="icon-white"></i>
<span class="label" style="background-color: #@label.color;">&nbsp;</span>
@label.labelName
</a>
</li>
}
}
@helper.html.dropdown("Assignee") {
<li><a href="javascript:void(0);" class="assign" data-name=""><i class="icon-remove-circle"></i> Clear assignee</a></li>
<li class="divider"></li>
}
@helper.html.dropdown("Milestone") {
<li><a href="javascript:void(0);" class="milestone" data-id=""><i class="icon-remove-circle"></i> Clear this milestone</a></li>
<li class="divider"></li>
@milestones.map { milestone =>
<li><a href="javascript:void(0);" class="milestone" data-id="@milestone.milestoneId"><i class="icon-white"></i> @milestone.title</a></li>
}
}
</td>
</tr>
}
@issues.map { case (issue, labels, commentCount) =>
<tr>
<td>
<label class="checkbox" style="cursor: default;">
<input type="checkbox" value="@issue.issueId"/>
<a href="@url(repository)/issues/@issue.issueId" class="issue-title">@issue.title</a>
@labels.map { label =>
<span class="label-color small" style="background-color: #@label.color; color: #@label.fontColor; padding-left: 4px; padding-right: 4px">@label.labelName</span>
@@ -180,18 +224,7 @@
<i class="icon-comment"></i><a href="@url(repository)/issues/@issue.issueId" class="issue-comment-count">@commentCount @plural(commentCount, "comment")</a>
}
</div>
</td>
</tr>
}
@if(issues.isEmpty){
<tr>
<td style="padding: 20px; background-color: #eee; text-align: center;">
No issues to show.
@if(condition.labels.nonEmpty || condition.milestoneId.isDefined){
<a href="@condition.copy(labels = Set.empty, milestoneId = None).toURL">Clear active filters.</a>
} else {
<a href="@url(repository)/issues/new">Create a new issue.</a>
}
</label>
</td>
</tr>
}
@@ -215,6 +248,11 @@ $(function(){
});
}
});
$('.table-issues input[type=checkbox]').change(function(){
$('.table-issues button').prop('disabled',
!$('.table-issues input[type=checkbox]').filter(':checked').length);
}).change();
});
</script>
}