mirror of
				https://github.com/gitbucket/gitbucket.git
				synced 2025-10-31 10:36:05 +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.scalatra.json._ | ||||||
| import org.json4s._ | import org.json4s._ | ||||||
| import jp.sf.amateras.scalatra.forms._ | import jp.sf.amateras.scalatra.forms._ | ||||||
| import service._ |  | ||||||
|  |  | ||||||
| /** | /** | ||||||
|  * Provides generic features for ScalatraServlet implementations. |  * 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) |     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(){ |   protected def identifier: Constraint = new Constraint(){ | ||||||
|     def validate(name: String, value: String): Option[String] = |     def validate(name: String, value: String): Option[String] = | ||||||
|       if(!value.matches("^[a-zA-Z0-9\\-_]+$")){ |       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]) | case class Context(path: String, loginAccount: Option[Account]) | ||||||
		Reference in New Issue
	
	Block a user