mirror of
https://github.com/gitbucket/gitbucket.git
synced 2025-11-06 21:45:50 +01:00
Implementing label editing form.
This commit is contained in:
@@ -3,6 +3,7 @@ package app
|
||||
import jp.sf.amateras.scalatra.forms._
|
||||
import service._
|
||||
import util.WritableRepositoryAuthenticator
|
||||
import org.scalatra._
|
||||
|
||||
class LabelsController extends LabelsControllerBase
|
||||
with LabelsService with RepositoryService with AccountService with WritableRepositoryAuthenticator
|
||||
@@ -12,12 +13,17 @@ trait LabelsControllerBase extends ControllerBase {
|
||||
|
||||
case class LabelForm(labelName: String, color: String)
|
||||
|
||||
val labelForm = mapping(
|
||||
val newForm = mapping(
|
||||
"newLabelName" -> trim(label("Label name", text(required, maxlength(100)))),
|
||||
"newColor" -> trim(label("Color", text(required, maxlength(7))))
|
||||
)(LabelForm.apply)
|
||||
|
||||
post("/:owner/:repository/issues/label/new", labelForm)(writableRepository { form =>
|
||||
val editForm = mapping(
|
||||
"editLabelName" -> trim(label("Label name", text(required, maxlength(100)))),
|
||||
"editColor" -> trim(label("Color", text(required, maxlength(7))))
|
||||
)(LabelForm.apply)
|
||||
|
||||
post("/:owner/:repository/issues/label/new", newForm)(writableRepository { form =>
|
||||
val owner = params("owner")
|
||||
val repository = params("repository")
|
||||
|
||||
@@ -37,4 +43,14 @@ trait LabelsControllerBase extends ControllerBase {
|
||||
}
|
||||
})
|
||||
|
||||
post("/:owner/:repository/issues/label/:labelId/edit", editForm)(writableRepository { form =>
|
||||
val owner = params("owner")
|
||||
val repository = params("repository")
|
||||
val labelId = params("labelId").toInt
|
||||
|
||||
// createLabel(owner, repository, form.labelName, form.color.substring(1))
|
||||
//
|
||||
Ok("label updated.")
|
||||
})
|
||||
|
||||
}
|
||||
@@ -2,7 +2,9 @@
|
||||
@import context._
|
||||
@defining((if(label.isEmpty) ("new", 190, 4) else ("edit", 180, 8))){ case (mode, width, margin) =>
|
||||
<div id="@(mode)LabelForm">
|
||||
<form method="POST" action="@path/@repository.owner/@repository.name/issues/label/@mode" validate="true" @if(mode == "edit"){ style="margin-bottom: 8px;"}>
|
||||
<form method="POST"
|
||||
action="@path/@repository.owner/@repository.name/issues/label/@{if(mode == "new") "new" else label.get.labelId + "/edit"}"
|
||||
validate="true" @if(mode == "edit"){ style="margin-bottom: 8px;"}>
|
||||
<span id="error-@(mode)LabelName" class="error"></span>
|
||||
<input type="text" name="@(mode)LabelName" id="@(mode)LabelName" style="width: @(width)px; margin-left: @(margin)px; margin-bottom: 0px;" value="@label.map(_.labelName)"@if(mode == "new"){ placeholder="New label name"}/>
|
||||
<span id="error-@(mode)Color" class="error"></span>
|
||||
@@ -26,6 +28,10 @@
|
||||
$('#editLabelForm').click(function(e){
|
||||
e.stopPropagation();
|
||||
});
|
||||
|
||||
$.each($('form[validate=true]'), function(i, form){
|
||||
$(form).submit(validate);
|
||||
});
|
||||
}
|
||||
</script>
|
||||
</div>
|
||||
|
||||
Reference in New Issue
Block a user