import * as React from 'react'; import { useState, useEffect } from 'react'; import { connect } from "react-redux"; import { SafeAreaView, ScrollView, TouchableOpacity, Button, View, Text, Linking } from 'react-native'; import {useNetInfo} from "@react-native-community/netinfo"; import NetInfo from "../../components/netstatus"; // import NetInfo from "@react-native-community/netinfo" import CustomHeader from '../../components/header.js'; import Assets from '../../components/assets.manager.js'; import Theme from '../../components/theme.style.js'; import Elements from '../../components/elements.js'; import REQUEST from '../../components/api/'; import { ContactOptions, ContactOptionsWithParams } from '../../components/contact.action'; import DB, { session } from '../../components/storage/index'; import CustomSafeArea from '../../components/safeArea.component'; class LoginSendOTP extends React.PureComponent { constructor(props) { super(props) } state = { loading: false, data: {}, contact: {}, contactselect: false, openOptions: false } componentDidMount() { this.init() } componentWillUnmount() { } init = async () => { this.setState({ data: this.props.route.params }) await DB.remove("is_guest") } onSaveSession = async () => { console.log(this.state.data) this.props.navigation.navigate("LoginOTP", this.state.data) } onSend = () => { NetInfo.netstatus(isConnected => { if(isConnected) { this.setState({ loading: true }) this.requestOtp(success => { if(success.status == 1){ this.setState({ loading: false }) this.onSaveSession() }else{ this.setState({ loading: false }) } }, error => {}) } else { Elements.nointernet2(this.props) } }) } requestOtp = async (successCallback, errorCallback) => { let params = `lcard_uuid=${this.state.data.lcard_uuid}&mobile=${Theme.formatter.PMBL(this.state.data.mobile_number)}&is_resend=false`; await REQUEST("requestOTP", "get", {}, params, {}, function(res){ console.log(res) successCallback(res) }, function(error){ console.log(res) errorCallback(error) }) } render() { return ( this.props.navigation.goBack()} navigation={this.props.navigation} /> Please Confirm We will send you a One Time Passcode to {Theme.formatter.ENCMBL(this.state.data.mobile_number || "+639000000000")} this.onSend()} style={{backgroundColor: Theme.colors.primary, padding: 15, width: '80%', borderRadius: 10, elevation: 3}}> Send me the code Not your mobile number? this.setState({ openOptions: true })} style={{flex: 2}}> Contact Us this.setState({ openOptions: false })} /> ) } } const mapStateToProps = (state) => { return { app_theme: state.appThemeReducer.theme } } export default connect(mapStateToProps, null)(LoginSendOTP);