2015-12-29 16:59:37 +00:00
|
|
|
context = window
|
|
|
|
|
logger = context.JK.logger
|
|
|
|
|
|
|
|
|
|
@TeacherStudentLevel = React.createClass({
|
|
|
|
|
|
2016-05-27 21:23:58 +00:00
|
|
|
mixins: [ICheckMixin]
|
2016-05-27 18:35:33 +00:00
|
|
|
|
|
|
|
|
componentDidMount: () ->
|
2016-05-27 21:23:58 +00:00
|
|
|
@checkboxes = [{selector: 'input.student-level', stateKey: 'checked'}]
|
2016-05-27 18:35:33 +00:00
|
|
|
|
|
|
|
|
@root = $(@getDOMNode())
|
|
|
|
|
|
|
|
|
|
@iCheckify()
|
|
|
|
|
|
|
|
|
|
componentDidUpdate: () ->
|
|
|
|
|
|
|
|
|
|
@iCheckify()
|
2015-12-29 16:59:37 +00:00
|
|
|
|
2016-05-27 21:23:58 +00:00
|
|
|
checkboxChanged:(e) ->
|
|
|
|
|
checked = $(e.target).is(':checked')
|
|
|
|
|
|
|
|
|
|
value = $(e.target).val()
|
|
|
|
|
|
|
|
|
|
#@setState({checked: value})
|
|
|
|
|
|
|
|
|
|
@studentLevelChanged(this.props.student, e)
|
|
|
|
|
|
2015-12-29 16:59:37 +00:00
|
|
|
render: () ->
|
|
|
|
|
`<span>
|
2016-01-04 23:25:29 +00:00
|
|
|
<input objectName={this.props.student} type="checkbox" className="student-level" onChange={this.studentLevelChanged.bind(this, this.props.student)} checked={this.state.checked}/>
|
2015-12-29 16:59:37 +00:00
|
|
|
<span className="student-level">{this.props.display}</span>
|
|
|
|
|
</span>`
|
|
|
|
|
|
|
|
|
|
studentLevelChanged: (level, e) ->
|
|
|
|
|
@setState({checked: $(e.target).is(':checked') })
|
|
|
|
|
|
2016-01-04 23:25:29 +00:00
|
|
|
@props.onChange(this.props.student, $(e.target).is(':checked'))
|
|
|
|
|
|
2015-12-29 16:59:37 +00:00
|
|
|
getInitialState: () ->
|
2016-01-04 23:25:29 +00:00
|
|
|
{checked:@props.level}
|
|
|
|
|
|
|
|
|
|
componentWillReceiveProps: (nextProps) ->
|
|
|
|
|
@setState({checked: nextProps.level})
|
2015-12-29 16:59:37 +00:00
|
|
|
})
|