Advertisement
Guest User

Modal Custom DatePick

a guest
Jun 26th, 2019
77
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. {/* =============================== MODAL DEPARTURE DATE & RETURN DATE ===================================== */}
  2.                 <Modal useNativeDriver={true} hideModalContentWhileAnimating={true} isVisible={(this.state.visibleModal === 5 || this.state.visibleModal === 6)} style={styles.bottomModal} onBackButtonPress={this.resetModal} onBackdropPress={this.resetModal}>
  3.                     <View style={styles.modalContent}>
  4.                         <Grid style={styles.modalHeaderDatepicker}>
  5.                             <Row style={{ paddingBottom: 7.5 }}>
  6.                                 <TouchableOpacity style={{ flexDirection: "row", flex: 1 }} onPress={() => this.resetModal()}>
  7.                                     <Col size={2} style={{ alignItems: "center", justifyContent: "center" }}>
  8.                                         <Icon name='close' type='evilIcon' color={thameColors.white} size={28} />
  9.                                     </Col>
  10.                                     <Col size={6.5} style={styles.modalTitleSection}>
  11.                                         <Text style={styles.modalTitle}>
  12.                                             {
  13.                                                 (this.state.visibleModal === 5) ? "Departure Date" : "Return Date"
  14.                                             }
  15.                                         </Text>
  16.                                     </Col>
  17.                                     <Col size={1.5} />
  18.                                 </TouchableOpacity>
  19.                             </Row>
  20.                         </Grid>
  21.                         <Grid>
  22.                             <Col>
  23.                                 <View style={{ flex: 1 }}>
  24.                                     <Dates
  25.                                         date={this.state.date}
  26.                                         onDatesChange={(this.state.visibleModal === 5) ? this.setDepartureDate : this.setReturnDate}
  27.                                         startDate={this.state.startDate}
  28.                                         endDate={this.state.endDate}
  29.                                         focusedInput={this.state.focus}
  30.                                         isDateBlocked={isDateBlocked}
  31.                                         focusedInput={this.state.focus}
  32.                                     />
  33.                                     <Text style={{ paddingTop: 20, fontSize: 16, color: thameColors.textBlack, paddingLeft: 20 }}>
  34.                                         {
  35.                                             (this.state.visibleModal === 5)
  36.                                                 ? "Departure Date: " + moment(this.state.departureDate).format("DD MMM YYYY")
  37.                                                 : "Return Date: " + moment(this.state.returnDate).format("DD MMM YYYY")
  38.  
  39.                                         }
  40.                                     </Text>
  41.  
  42.                                 </View>
  43.                             </Col>
  44.                         </Grid>
  45.                     </View>
  46.                 </Modal>
  47.                 {/* =============================== MODAL DEPARTURE DATE & RETURN DATE ===================================== */}
  48.  
  49.  
  50. {/* =============================== FUNCTION ===================================== */}
  51. setDepartureDate = ({ date }) => {
  52.         this.setState({
  53.             startDate: date,
  54.             departureDate: moment(date).format("YYYY-MM-DD"),
  55.             visibleModal: null,
  56.             focus: date,
  57.             returnDate: moment(date).add(1, 'days').format("YYYY-MM-DD")
  58.         })
  59.     }
  60.     setReturnDate = ({ date }) => {
  61.         this.setState({
  62.             returnDate: moment(date).format("YYYY-MM-DD"),
  63.             visibleModal: null
  64.         })
  65.     }
  66.  
  67. {/* =============================== FUNCTION ===================================== */}
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement