diff options
| author | jpl | 2016-12-30 15:41:47 +0100 |
|---|---|---|
| committer | jpl | 2016-12-30 15:41:47 +0100 |
| commit | bce26de60cefe506b98149b4aee008a39a359558 (patch) | |
| tree | a2732af5373c5e786e9245f8b96bc193f827cedf /app/assets/javascripts | |
| parent | a6e36a968f5ce8ded9031c1e3b097fcdf7097ff6 (diff) | |
| download | chouette-core-bce26de60cefe506b98149b4aee008a39a359558.tar.bz2 | |
Refs #2208: deletable journey pattern update
Diffstat (limited to 'app/assets/javascripts')
6 files changed, 22 insertions, 19 deletions
diff --git a/app/assets/javascripts/es6_browserified/journey_patterns/actions/index.js b/app/assets/javascripts/es6_browserified/journey_patterns/actions/index.js index c9f029bcd..95577994c 100644 --- a/app/assets/javascripts/es6_browserified/journey_patterns/actions/index.js +++ b/app/assets/javascripts/es6_browserified/journey_patterns/actions/index.js @@ -30,7 +30,7 @@ const actions = { journeyPattern }), deleteJourneyPattern : (index, journeyPattern) => ({ - type : 'DELETE_JOURNEYPATTERN_MODAL', + type : 'DELETE_JOURNEYPATTERN', index, journeyPattern }), diff --git a/app/assets/javascripts/es6_browserified/journey_patterns/components/JourneyPattern.js b/app/assets/javascripts/es6_browserified/journey_patterns/components/JourneyPattern.js index 7518fa154..1e930ee5d 100644 --- a/app/assets/javascripts/es6_browserified/journey_patterns/components/JourneyPattern.js +++ b/app/assets/javascripts/es6_browserified/journey_patterns/components/JourneyPattern.js @@ -3,7 +3,7 @@ var PropTypes = require('react').PropTypes const JourneyPattern = (props) => { return ( - <div className='list-group-item'> + <div className={(props.value.deletable ? 'disabled' : '') + ' list-group-item'}> <div style={{display: 'inline-block', verticalAlign: 'top', width: '40%'}}> <p className='small'><strong>Index: </strong>{props.index}</p> <p className='small'><strong>Name: </strong>{props.value.name}</p> @@ -15,7 +15,7 @@ const JourneyPattern = (props) => { </div> <div className='clearfix' style={{display: 'inline-block', verticalAlign: 'top', width: '20%'}}> - <button className='btn btn-xs btn-danger pull-right' onClick={props.onUpdateModalOpen} data-toggle='modal' data-target='#JourneyPatternModal'> + <button className={(props.value.deletable ? 'disabled' : '') + ' btn btn-xs btn-danger pull-right'} onClick={props.onUpdateModalOpen} data-toggle='modal' data-target='#JourneyPatternModal'> <span className='fa fa-pencil'></span> </button> </div> @@ -31,8 +31,12 @@ const JourneyPattern = (props) => { <span>{stopPoint.name}</span> <span className='pull-right'> <input - onChange = {(e) => props.onCheckboxChange(e)} - type='checkbox' id={stopPoint.id} checked={stopPoint.checked}></input> + onChange = {(e) => props.onCheckboxChange(e)} + type='checkbox' + id={stopPoint.id} + checked={stopPoint.checked} + disabled={props.value.deletable ? 'true' : 'false'} + ></input> </span> </li> )} diff --git a/app/assets/javascripts/es6_browserified/journey_patterns/components/Modal.js b/app/assets/javascripts/es6_browserified/journey_patterns/components/Modal.js index 9a2165da2..1d6c798bc 100644 --- a/app/assets/javascripts/es6_browserified/journey_patterns/components/Modal.js +++ b/app/assets/javascripts/es6_browserified/journey_patterns/components/Modal.js @@ -38,6 +38,7 @@ class ModalComponent extends Component { <li> <a href='#' + data-dismiss='modal' onClick={(e) => { e.preventDefault() this.props.onDeleteJourneyPattern(this.props.modal.modalProps.index, this.props.modal.modalProps.journeyPattern)} @@ -48,12 +49,6 @@ class ModalComponent extends Component { </li> </ul> </div> - {this.props.modal.open && ( - this.props.modal.modalProps.journeyPattern.deletable ? - <div className='alert alert-danger' style={{clear: 'both', marginBottom: 0}}>La mission a été supprimée. Cette action sera effective après validation.</div> - : - '' - )} </div> <div className='modal-body'> {this.props.modal.open && ( diff --git a/app/assets/javascripts/es6_browserified/journey_patterns/containers/Modal.js b/app/assets/javascripts/es6_browserified/journey_patterns/containers/Modal.js index c60b05403..146d33b4a 100644 --- a/app/assets/javascripts/es6_browserified/journey_patterns/containers/Modal.js +++ b/app/assets/javascripts/es6_browserified/journey_patterns/containers/Modal.js @@ -4,7 +4,8 @@ var actions = require('../actions') const mapStateToProps = (state) => { return { - modal: state.modal + modal: state.modal, + journeyPattern: state.journeyPattern } } diff --git a/app/assets/javascripts/es6_browserified/journey_patterns/reducers/journeyPatterns.js b/app/assets/javascripts/es6_browserified/journey_patterns/reducers/journeyPatterns.js index e763bc581..8885090a7 100644 --- a/app/assets/javascripts/es6_browserified/journey_patterns/reducers/journeyPatterns.js +++ b/app/assets/javascripts/es6_browserified/journey_patterns/reducers/journeyPatterns.js @@ -40,6 +40,14 @@ const journeyPatterns = (state = {}, action) => { return j } }) + case 'DELETE_JOURNEYPATTERN': + return state.map((j, i) =>{ + if( i == action.index){ + return Object.assign({}, j, {deletable: true}) + }else{ + return j + } + }) case 'SAVE_PAGE': actions.submitJourneyPattern(action.dispatch, state) default: diff --git a/app/assets/javascripts/es6_browserified/journey_patterns/reducers/modal.js b/app/assets/javascripts/es6_browserified/journey_patterns/reducers/modal.js index c2abb0d42..a54b9a66e 100644 --- a/app/assets/javascripts/es6_browserified/journey_patterns/reducers/modal.js +++ b/app/assets/javascripts/es6_browserified/journey_patterns/reducers/modal.js @@ -23,13 +23,8 @@ const modal = (state = {}, action) => { journeyPattern: action.journeyPattern } } - case 'DELETE_JOURNEYPATTERN_MODAL': - return Object.assign({}, state, { - modalProps: { - index: state.modalProps.index, - journeyPattern: updatedJourneyPattern(state.modalProps.journeyPattern, action) - } - }) + case 'DELETE_JOURNEYPATTERN': + return Object.assign({}, state, { open: false }) case 'SAVE_MODAL': return Object.assign({}, state, { open: false, |
