client/lanes/components/shared/RadioField.cjsx in lanes-0.4.0 vs client/lanes/components/shared/RadioField.cjsx in lanes-0.5.0
- old
+ new
@@ -1,14 +1,24 @@
+class FakeInputEvent
+ constructor: (value) ->
+ @target = {value}
+ isDefaultPrevented: -> false
+
+
class Lanes.Components.RadioField extends Lanes.React.Component
mixins: [
Lanes.Components.Form.FieldMixin
]
- renderEdit: ->
- <BS.Col {...@props}>
- <BS.Input
- type="radio"
- checked={@props.checked? || @props.value == @model[@props.name]}
- onChange={@handleChange}
- {...@props} />
- </BS.Col>
+ handleRadioChange: (ev) ->
+ if ev.target.checked
+ @fieldMixinSetValue( new FakeInputEvent(@props.value) )
+
+ renderEdit: (props, handlers) ->
+ <BS.FormControl
+ {...props}
+ {...handlers}
+ type="radio"
+ checked={@props.checked? || @props.value == @model[@props.name]}
+ onChange={@handleRadioChange}
+ />