@@ -9,7 +9,26 @@ import firebase from '../firebase.js'
9
9
import moment from 'moment'
10
10
import { mapJournalToProps as mapStateToProps } from '../utils/stateMaps.js'
11
11
import StarRating from './star-rating.jsx'
12
+ import {
13
+ DatePicker ,
14
+ TimePicker ,
15
+ DateTimePicker ,
16
+ KeyboardDateTimePicker ,
17
+ MuiPickersUtilsProvider ,
18
+ } from '@material-ui/pickers' ;
19
+ import green from "@material-ui/core/colors/green" ;
20
+ import { createMuiTheme } from "@material-ui/core" ;
21
+ import { ThemeProvider } from "@material-ui/styles" ;
12
22
23
+ const defaultMaterialTheme = createMuiTheme ( {
24
+ palette : {
25
+ primary : green ,
26
+ } ,
27
+ typography : {
28
+ // Tell Material-UI what's the font-size on the html element is.
29
+ htmlFontSize : 10 ,
30
+ } ,
31
+ } ) ;
13
32
14
33
export class SelectSpot extends React . Component {
15
34
@@ -22,8 +41,7 @@ export class SelectSpot extends React.Component {
22
41
handleChange = ( event ) => {
23
42
const target = event . target ;
24
43
const value = target . type === 'checkbox' ? target . checked : target . value ;
25
- const name = target . name ;
26
-
44
+ const name = target . name ;
27
45
this . setState ( { [ name ] : value } )
28
46
}
29
47
render ( ) {
@@ -56,12 +74,13 @@ export class JournalForm extends React.Component {
56
74
const { spot, date, entry, id, rating} = this . props
57
75
this . state = {
58
76
spot : spot || "grand" ,
59
- date : date || moment ( ) . format ( 'YYYY-MM-DD' ) ,
60
- entry : entry ,
61
- rating : rating ,
77
+ date : date || moment ( ) . subtract ( 2 , 'hours' ) . minutes ( 0 ) . valueOf ( ) ,
78
+ entry : entry || '' ,
79
+ rating : rating || false ,
62
80
id : id || uuid ( )
63
81
}
64
82
}
83
+
65
84
handleSubmit = ( entry ) => {
66
85
// const uid = this.props.uid || 'anonymous'
67
86
// console.log('FORMUPDATE', entry);
@@ -87,6 +106,9 @@ export class JournalForm extends React.Component {
87
106
this . setState ( { [ name ] : value } )
88
107
}
89
108
109
+ handleDateChange = ( value ) => {
110
+ this . setState ( { date : moment ( value ) . valueOf ( ) } )
111
+ }
90
112
onSubmit = ( event ) => {
91
113
const { spot, date, entry, id, rating} = this . state ;
92
114
const info = {
@@ -111,11 +133,24 @@ export class JournalForm extends React.Component {
111
133
render ( ) {
112
134
return (
113
135
< form onSubmit = { this . onSubmit } >
114
- < fieldset >
136
+ < fieldset className = "details" >
115
137
< SelectSpot onChange = { this . handleChange } current = { this . state . spot } />
116
- < label >
117
- date:
118
- < input name = "date" type = "text" value = { this . state . date } onChange = { this . handleChange } />
138
+ { /* <label > */ }
139
+ { /* date: */ }
140
+
141
+ { /* <input name="date" type="text" value={this.state.date} onChange={this.handleChange}/> */ }
142
+ { /* </label> */ }
143
+ < label >
144
+ date2:
145
+ < ThemeProvider theme = { defaultMaterialTheme } >
146
+ < KeyboardDateTimePicker name = "date" value = { this . state . date }
147
+ onChange = { this . handleDateChange }
148
+ autoOk = { false }
149
+ format = "YYYY/MM/DD HH:mm"
150
+ className = "full-width"
151
+ minutesStep = { 15 }
152
+ />
153
+ </ ThemeProvider >
119
154
</ label >
120
155
< label >
121
156
Quality:
0 commit comments