aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorThomas Haddad2017-02-13 17:54:41 +0100
committerThomas Haddad2017-02-13 17:54:41 +0100
commit0373f1a92526ec3147edfd1d079a3ab5c17e61b4 (patch)
tree728d1d4e37205d0ed6b17b9ed26c8f2d18abd524
parentb97168aac7d42b1575e23e88fc104c22def86664 (diff)
downloadchouette-core-0373f1a92526ec3147edfd1d079a3ab5c17e61b4.tar.bz2
Refs #2502: setup momentjs to parse departure / arrival for vj
Signed-off-by: Thomas Shawarma Haddad <thomas.haddad@af83.com>
-rw-r--r--app/assets/javascripts/es6_browserified/vehicle_journeys/components/VehicleJourney.js91
-rw-r--r--package.json1
2 files changed, 57 insertions, 35 deletions
diff --git a/app/assets/javascripts/es6_browserified/vehicle_journeys/components/VehicleJourney.js b/app/assets/javascripts/es6_browserified/vehicle_journeys/components/VehicleJourney.js
index fa9463271..7504d5328 100644
--- a/app/assets/javascripts/es6_browserified/vehicle_journeys/components/VehicleJourney.js
+++ b/app/assets/javascripts/es6_browserified/vehicle_journeys/components/VehicleJourney.js
@@ -1,42 +1,63 @@
var React = require('react')
+var Component = require('react').Component
var PropTypes = require('react').PropTypes
+var moment = require('moment')
-const VehicleJourney = ({value, filters}) => {
- return (
- <div className={'list-group-item'}>
-
- <div style={{display: 'inline-block', verticalAlign: 'top', width: 'calc(100% - 25px)'}}>
- {/* Name */}
- <p className='small'>
- <strong>Id: </strong>{value.journey_pattern_id}
- </p>
-
- {/* Published name */}
- <p className='small'>
- <strong>Objectid: </strong>{value.objectid}
- </p>
-
- {/* Registration number */}
- <p className='small'>
- <strong>Registration number: </strong>{value.registration_number}
- </p>
- <ul className='list-group'>
- {value.vehicle_journey_at_stops.map((vj, i) =>
- <li
- key={i}
- >
- <input type='text' defaultValue={vj.arrival_time}/>
- <span></span>
- {filters.toggleArrivals &&
- <input type='text' defaultValue={vj.departure_time}/>
- }
- </li>
- )}
- </ul>
- </div>
+class VehicleJourney extends Component {
+ constructor(props) {
+ super(props)
+ }
+
+ format(e){
+ if(e.target.value < 10 && e.target.value.length == 1){
+ e.target.value = '0' + e.target.value;
+ }
+ }
+
+ render() {
+ return (
+ <div className={'list-group-item'}>
+
+ <div style={{display: 'inline-block', verticalAlign: 'top', width: 'calc(100% - 25px)'}}>
+ {/* Name */}
+ <p className='small'>
+ <strong>Id: </strong>{this.props.value.journey_pattern_id}
+ </p>
- </div>
- )
+ {/* Published name */}
+ <p className='small'>
+ <strong>Objectid: </strong>{this.props.value.objectid}
+ </p>
+
+ {/* Registration number */}
+ <p className='small'>
+ <strong>Registration number: </strong>{this.props.value.registration_number}
+ </p>
+ <ul className='list-group'>
+ {this.props.value.vehicle_journey_at_stops.map((vj, i) =>
+ <li
+ key={i}
+ >
+ <span>
+ <input type='number' min='00' max='23' onInput={(e) => {this.format(e)}} defaultValue={moment(vj.arrival_time).format('hh')}/>
+ <span>:</span>
+ <input type='number' min='00' max='59' onInput={(e) => {this.format(e)}} defaultValue={moment(vj.arrival_time).format('mm')}/>
+ </span>
+ {this.props.filters.toggleArrivals &&
+ <span>
+ <input type='number' min='00' max='23' onInput={(e) => {this.format(e)}} defaultValue={moment(vj.departure_time).format('hh')}/>
+ <span>:</span>
+ <input type='number' min='00' max='59' onInput={(e) => {this.format(e)}} defaultValue={moment(vj.departure_time).format('mm')}/>
+ </span>
+ }
+ </li>
+ )}
+ </ul>
+ </div>
+
+ </div>
+ )
+ }
}
VehicleJourney.propTypes = {
diff --git a/package.json b/package.json
index 5bc8bbab1..3f389793e 100644
--- a/package.json
+++ b/package.json
@@ -7,6 +7,7 @@
"babelify": "7.3.0",
"browserify": "13.1.1",
"browserify-incremental": "3.1.1",
+ "moment": "^2.17.1",
"react": "15.3.2",
"react-dom": "15.3.2",
"react-redux": "4.4.5",