import React from 'react' import { connect } from 'react-redux' import { setLoading } from '../../../actions/index' import { addActivity, editActivity } from '../../../actions/activities' import { history } from '../../../index' function FormWithGpx (props) { const { activity, loading, onAddActivity, onEditActivity, sports } = props const sportId = activity ? activity.sport_id : '' return (
event.preventDefault()} >
{activity ? (
) : (
)} {loading ? (
) : (
activity ? onEditActivity(event, activity) : onAddActivity(event) } value="Submit" /> history.go(-1)} value="Cancel" />
)} ) } export default connect( state => ({ loading: state.loading }), dispatch => ({ onAddActivity: e => { dispatch(setLoading(true)) const form = new FormData() form.append('file', e.target.form.gpxFile.files[0]) form.append( 'data', `{"sport_id": ${e.target.form.sport.value}}` ) dispatch(addActivity(form)) }, onEditActivity: (e, activity) => { dispatch(editActivity({ id: activity.id, sport_id: +e.target.form.sport.value, title: e.target.form.title.value, })) }, }) )(FormWithGpx)