coffeescript-ui
Version:
Coffeescript User Interface System
50 lines (39 loc) • 1.23 kB
text/coffeescript
###
* coffeescript-ui - Coffeescript User Interface System (CUI)
* Copyright (c) 2013 - 2016 Programmfabrik GmbH
* MIT Licence
* https://github.com/programmfabrik/coffeescript-ui, http://www.coffeescript-ui.org
###
moment = require('moment')
class CUI.DateTimeInputBlock extends CUI.InputBlock
initOpts: ->
super()
matcher:
mandatory: true
check: "PlainObject"
datetime:
mandatory: true
check: String
input_format:
mandatory: true
check: (v) ->
!!v.input
incrementBlock: (block, blocks) ->
decrementBlock: (block, blocks) ->
__changeBlock: (block, blocks, diff) ->
console.debug "change block", block, blocks, diff, , .format
mom = moment(, .input)
if CUI.util.isFunction(.inc_func)
.inc_func(mom, diff)
else
if diff < 0
mom.subtract(.inc_func_amount or 1, .inc_func)
else
mom.add(.inc_func_amount or 1, .inc_func)
for bl in blocks
bl.setString(mom.format(bl._matcher.match_str))
# console.debug "inc block", , diff, mom.toString()
return block