mirror of
https://github.com/gitbucket/gitbucket.git
synced 2025-11-01 02:56:08 +01:00
Add date value type for scalatra-forms mapping.
This commit is contained in:
@@ -5,7 +5,6 @@ import org.scalatra._
|
||||
import org.scalatra.json._
|
||||
import org.json4s._
|
||||
import jp.sf.amateras.scalatra.forms._
|
||||
import service._
|
||||
|
||||
/**
|
||||
* Provides generic features for ScalatraServlet implementations.
|
||||
@@ -34,6 +33,9 @@ abstract class ControllerBase extends ScalatraFilter with ClientSideValidationFo
|
||||
url.substring(0, url.length - request.getRequestURI.length)
|
||||
}
|
||||
|
||||
/**
|
||||
* Constraint for the identifier such as user name, repository name or page name.
|
||||
*/
|
||||
protected def identifier: Constraint = new Constraint(){
|
||||
def validate(name: String, value: String): Option[String] =
|
||||
if(!value.matches("^[a-zA-Z0-9\\-_]+$")){
|
||||
@@ -45,6 +47,17 @@ abstract class ControllerBase extends ScalatraFilter with ClientSideValidationFo
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* ValueType for the Date property.
|
||||
*/
|
||||
def date(constraints: Constraint*): SingleValueType[java.sql.Date] =
|
||||
new SingleValueType[java.sql.Date]((pattern("\\d{4}-\\d{2}-\\d{2}") +: constraints): _*){
|
||||
def convert(value: String): java.sql.Date = {
|
||||
val formatter = new java.text.SimpleDateFormat("yyyy-MM-dd")
|
||||
new java.sql.Date(formatter.parse(value).getTime)
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
case class Context(path: String, loginAccount: Option[Account])
|
||||
Reference in New Issue
Block a user