Compare commits

..

1 Commits

Author SHA1 Message Date
GotPPay
591d7be308 round time to the nearest 5 min 2018-05-11 17:24:40 +02:00
2 changed files with 28 additions and 45 deletions

View File

@@ -34,7 +34,7 @@ import Checkbox from 'material-ui/Checkbox';
import Popover from 'material-ui/Popover';
let DateTimeFormat;
const roundingTime = 1000 * 60 * 5; //5 minutes
DateTimeFormat = global.Intl.DateTimeFormat;
@@ -44,8 +44,8 @@ export class ValidationErrorsInfoDialog extends React.Component {
open: this.props.open,
}
componentWillReceiveProps(newProps){
this.setState({open: newProps.open});
componentWillReceiveProps(newProps) {
this.setState({ open: newProps.open });
}
handleOpen = () => {
@@ -76,13 +76,13 @@ export class ValidationErrorsInfoDialog extends React.Component {
modal={false}
open={this.state.open}
onRequestClose={this.handleClose}
overlayStyle={{backgroundColor: 'transparent'}}
overlayStyle={{ backgroundColor: 'transparent' }}
>
{this.props.errorMessages.map(errorMessage => {
return (
<div>
<a>{errorMessage.message}</a>
<br/>
<br />
</div>
);
})}
@@ -416,16 +416,18 @@ class VerticalNonLinear extends React.Component {
constructor(props) {
super(props);
let dateNow = new Date();
this.state = {
stepIndex: 0,
rideTypeValue: 0,
providerID: 0,
providerName: '',
visitDate: new Date(),
visitTime: new Date(),
visitTime: new Date(Math.round(dateNow.getTime() / roundingTime) * roundingTime),
pickupLocation: null,
pickupTime: new Date(),
pickupTimeReturn: new Date(),
pickupTime: new Date(Math.round(dateNow.getTime() / roundingTime) * roundingTime),
pickupTimeReturn: new Date(Math.round(dateNow.getTime() / roundingTime) * roundingTime),
pickupTimeReturnDisplayMode: 'none',
open: false,
message: 'Booking Ride',
@@ -453,8 +455,8 @@ class VerticalNonLinear extends React.Component {
},
return_time: new Date(),
pickupTimeHide: false,
showValidationErrors:false,
validationErrors:[],
showValidationErrors: false,
validationErrors: [],
};
}
@@ -489,10 +491,10 @@ class VerticalNonLinear extends React.Component {
}
});
let visitTime = new Date(new Date().getTime() + (1 * 60 * 60 * 1000));
let visitDate = visitTime;
let pickupTime = new Date(visitTime.getTime() - (0.5 * 60 * 60 * 1000));
let pickupTimeReturn = new Date(visitTime.getTime() - (0.5 * 60 * 60 * 1000));
let visitTime = new Date(Math.round((date.getTime() + (1 * 60 * 60 * 1000)) / roundingTime) * roundingTime);
let visitDate = date;
let pickupTime = new Date(Math.round((visitTime.getTime() - (0.5 * 60 * 60 * 1000)) / roundingTime) * roundingTime);
let pickupTimeReturn = new Date(Math.round((visitTime.getTime() - (0.5 * 60 * 60 * 1000)) / roundingTime) * roundingTime);
this.setState(Object.assign(this.state, {
visitDate: visitDate,
@@ -556,11 +558,11 @@ class VerticalNonLinear extends React.Component {
self.handleRequestClose(self);
window.location.href = '/#/app/page/map/' + res.data.ride_uuid;
}).catch(error => {
if (error.response.status === 422){
if (error.response.status === 422) {
//Unprocessable Entity (validation failed)
self.setState(Object.assign(self.state, {
showValidationErrors:true,
validationErrors:error.response.data.data
showValidationErrors: true,
validationErrors: error.response.data.data
}));
}
});
@@ -600,10 +602,10 @@ class VerticalNonLinear extends React.Component {
handleDate(event, date, state) {
let self = state
let visitTime = new Date(date.getTime() + (1 * 60 * 60 * 1000));
let visitTime = new Date(Math.round((date.getTime() + (1 * 60 * 60 * 1000)) / roundingTime) * roundingTime);
let visitDate = date;
let pickupTime = new Date(visitTime.getTime() - (0.5 * 60 * 60 * 1000));
let pickupTimeReturn = new Date(visitTime.getTime() - (0.5 * 60 * 60 * 1000));
let pickupTime = new Date(Math.round((visitTime.getTime() - (0.5 * 60 * 60 * 1000)) / roundingTime) * roundingTime);
let pickupTimeReturn = new Date(Math.round((visitTime.getTime() - (0.5 * 60 * 60 * 1000)) / roundingTime) * roundingTime);
self.setState(Object.assign(self.state, {
visitDate: visitDate,
@@ -850,9 +852,9 @@ class VerticalNonLinear extends React.Component {
}
handleValidationErrosDialogDismiss(){
handleValidationErrosDialogDismiss() {
this.setState(Object.assign(this.state, {
showValidationErrors:false
showValidationErrors: false
}));
}
@@ -919,8 +921,8 @@ class VerticalNonLinear extends React.Component {
<div className="box-body padding-xs">
<div style={{ maxWidth: 380, margin: 'auto' }}>
<ValidationErrorsInfoDialog open = {this.state.showValidationErrors} errorMessages = {this.state.validationErrors} onDismiss={this.handleValidationErrosDialogDismiss.bind(this)}/>
<ValidationErrorsInfoDialog open={this.state.showValidationErrors} errorMessages={this.state.validationErrors} onDismiss={this.handleValidationErrosDialogDismiss.bind(this)} />
<Stepper
activeStep={this.state.stepIndex}
linear={false}

View File

@@ -143,7 +143,7 @@ const Address = (props) => {
)
};
const Main = ({ user, onAddressAdded, onAddressRemoved, onContactAdded, readOnly }) => {
const Main = ({ user, onAddressAdded, onAddressRemoved, readOnly }) => {
return (
<div className="row">
<div className="col-xl-12">
@@ -158,7 +158,7 @@ const Main = ({ user, onAddressAdded, onAddressRemoved, onContactAdded, readOnly
/>
</div>
<div className="col-xl-6">
<ContactInfo user={user} readOnly={readOnly} onContactAdded={onContactAdded} />
<ContactInfo user={user} readOnly={readOnly} />
</div>
</div>
);
@@ -685,7 +685,6 @@ const ContactInfo = (props) => {
title={"Member Contact"}
buttonValue={"Add Contact"}
showDescription={false}
onNewContact={props.onContactAdded}
/>
}
</div>
@@ -824,7 +823,6 @@ class User extends React.Component {
this.getUser = this.getUser.bind(this);
this.handleAddressAdded = this.handleAddressAdded.bind(this);
this.handleAddressRemoved = this.handleAddressRemoved.bind(this);
this.handleContactAdded = this.handleContactAdded.bind(this);
}
componentDidMount() {
@@ -842,22 +840,6 @@ class User extends React.Component {
.catch(console.error);
}
handleContactAdded(contact) {
const user_uuid = this.props.params.user_uuid;
const self = this;
var contactObj = {
"type": contact.type,
"contact": contact.contact,
}
Instance.getRawConn().post(`/v1/nemt/users/portal/${user_uuid}/contact`, contactObj)
.then(res => {
this.getUser(user_uuid);
})
.catch(console.error);
}
handleAddressAdded(address) {
const user_uuid = this.props.params.user_uuid;
const self = this;
@@ -908,7 +890,6 @@ class User extends React.Component {
user={user}
onAddressAdded={this.handleAddressAdded}
onAddressRemoved={this.handleAddressRemoved}
onContactAdded={this.handleContactAdded}
readOnly={readOnly}
/>
</QueueAnim>