diff options
| author | Zog | 2018-01-10 15:59:17 +0100 |
|---|---|---|
| committer | Zog | 2018-01-12 15:41:11 +0100 |
| commit | 84f3edcfc7213d5a02f10ba002e091e1563f2e27 (patch) | |
| tree | bade2d2f0aa4ee2eb16b2f3bcaf65bf5bdafb5d2 /app/javascript/vehicle_journeys/components | |
| parent | 853c7494b908c8b9dea3b91332ab1265aa40f428 (diff) | |
| download | chouette-core-84f3edcfc7213d5a02f10ba002e091e1563f2e27.tar.bz2 | |
Refs #5529 @0.5h; Refactor buttons5529-prevent-double-submitting-of-react-forms
Diffstat (limited to 'app/javascript/vehicle_journeys/components')
| -rw-r--r-- | app/javascript/vehicle_journeys/components/SaveVehicleJourneys.js | 47 |
1 files changed, 8 insertions, 39 deletions
diff --git a/app/javascript/vehicle_journeys/components/SaveVehicleJourneys.js b/app/javascript/vehicle_journeys/components/SaveVehicleJourneys.js index 64fd7310e..6e94b04a3 100644 --- a/app/javascript/vehicle_journeys/components/SaveVehicleJourneys.js +++ b/app/javascript/vehicle_journeys/components/SaveVehicleJourneys.js @@ -1,50 +1,19 @@ import React, { Component } from 'react' import PropTypes from 'prop-types' +import SaveButton from '../../helpers/save_button' import actions from '../actions' -export default class SaveVehicleJourneys extends Component{ - constructor(props){ - super(props) +export default class SaveVehicleJourneys extends SaveButton{ + hasPolicy(){ + return this.props.filters.policy['vehicle_journeys.update'] == true } - btnDisabled(){ - return !this.props.status.fetchSuccess || this.props.status.isFetching + formClassName(){ + return 'vehicle_journeys' } - btnClass(){ - let className = ['btn btn-default'] - if(this.btnDisabled()){ - className.push('disabled') - } - return className.join(' ') - } - - render() { - if (this.props.filters.policy['vehicle_journeys.update'] == false) { - return false - }else{ - return ( - <div className='row mt-md'> - <div className='col-lg-12 text-right'> - <form className='vehicle_journeys formSubmitr ml-xs' onSubmit={e => {e.preventDefault()}}> - <div className="btn-group sticky-actions"> - <button - className={this.btnClass()} - type='button' - disabled={this.btnDisabled()} - onClick={e => { - e.preventDefault() - this.props.editMode ? this.props.onSubmitVehicleJourneys(this.props.dispatch, this.props.vehicleJourneys) : this.props.onEnterEditMode() - }} - > - {this.props.editMode ? "Valider" : "Editer"} - </button> - </div> - </form> - </div> - </div> - ) - } + submitForm(){ + this.props.onSubmitVehicleJourneys(this.props.dispatch, this.props.vehicleJourneys) } } |
