UNPKG

trc-client-core

Version:
56 lines (53 loc) 1.91 kB
var React = require('react'); var ModalManager = require('trc-client-core/src/Modal/ModalManager'); var ProductPathwayModal = require('./ProductPathwayModal'); var ProductPathwayButton = React.createClass({ displayName: 'ProductPathwayButton', propTypes: { course: React.PropTypes.object, type: React.PropTypes.string, vehicle: React.PropTypes.string, candidate: React.PropTypes.string }, onShowModal: function (){ var pathway = this.props.course.pathway; var obj = this.props.type + "Course"; var coursePath = pathway[obj]; var infoMap = this.props.course.completionInfoMap; var status = infoMap[pathway[obj].courseCode]; var props = ({ pathway : coursePath, completion: status, participantId: this.props.candidate, courseType : this.props.type }); ModalManager.showModal(ProductPathwayModal, props); }, render: function () { var pathway = this.props.course.pathway; var obj = this.props.type + "Course"; var infoMap = this.props.course.completionInfoMap; if(pathway[obj]){ var status = infoMap[pathway[obj].courseCode]; var buttonprocess; if(status){ buttonprocess = status.process; } else { buttonprocess = " "; } var butttonClass = "w100 CourseButton " + " " + this.props.type.toUpperCase() + " " + buttonprocess; return ( <div className={butttonClass} onClick={this.onShowModal} > </div> ); } else { return ( <div className="w100 Button Button-grey" disabled></div> ); } } }); module.exports = ProductPathwayButton;