Commit ecdf3378 authored by Prasetya Saputra's avatar Prasetya Saputra

menambahkan file baru card privacy statement

parent ed90d159
...@@ -62,6 +62,7 @@ import SettingUrl from './setBaseUrl'; ...@@ -62,6 +62,7 @@ import SettingUrl from './setBaseUrl';
import InboxList from './InboxList'; import InboxList from './InboxList';
import InboxDetail from './InboxDetail'; import InboxDetail from './InboxDetail';
import PrivacyStatement from './PrivacyStatement'; import PrivacyStatement from './PrivacyStatement';
import CardPrivacyStatement from './CardPrivacyStatement';
import badgeInbox from './Home'; import badgeInbox from './Home';
import { useNavigation } from '@react-navigation/native'; import { useNavigation } from '@react-navigation/native';
import { useSafeArea } from 'react-native-safe-area-context'; import { useSafeArea } from 'react-native-safe-area-context';
...@@ -279,6 +280,20 @@ class Auth extends React.Component { ...@@ -279,6 +280,20 @@ class Auth extends React.Component {
textAlign: 'center' textAlign: 'center'
}, title: i18n.t('headerPrivacyPolicy') }, title: i18n.t('headerPrivacyPolicy')
}} /> }} />
{/* Card TnC */}
<Stack.Screen name="Card Privacy Statement" component={CardPrivacyStatement} options={{
headerStyle: { backgroundColor: '#CFB368' },
headerTitleContainerStyle: { alignContent: 'center' },
headerTitleAlign: 'center',
headerTintColor: '#fff',
headerTitleStyle: {
alignSelf: 'center',
fontFamily: 'Gotham-Black',
fontSize: 20,
color: 'white',
textAlign: 'center'
}, title: i18n.t('headerPrivacyPolicy')
}} />
</> </>
) : this.props.pageEmailConfirmation == true ? ( ) : this.props.pageEmailConfirmation == true ? (
...@@ -343,6 +358,20 @@ class Auth extends React.Component { ...@@ -343,6 +358,20 @@ class Auth extends React.Component {
textAlign: 'center' textAlign: 'center'
}, title: i18n.t('headerPrivacyPolicy') }, title: i18n.t('headerPrivacyPolicy')
}} /> }} />
{/* TnC Card */}
<Stack.Screen name="Card Privacy Statement" component={CardPrivacyStatement} options={{
headerStyle: { backgroundColor: '#CFB368' },
headerTitleContainerStyle: { alignContent: 'center' },
headerTitleAlign: 'center',
headerTintColor: '#fff',
headerTitleStyle: {
alignSelf: 'center',
fontFamily: 'Gotham-Black',
fontSize: 20,
color: 'white',
textAlign: 'center'
}, title: i18n.t('headerPrivacyPolicy')
}} />
</> </>
) : ( ) : (
<> <>
...@@ -455,6 +484,20 @@ class Auth extends React.Component { ...@@ -455,6 +484,20 @@ class Auth extends React.Component {
textAlign: 'center' textAlign: 'center'
}, title: i18n.t('headerPrivacyPolicy') }, title: i18n.t('headerPrivacyPolicy')
}} /> }} />
{/* Card TnC */}
<Stack.Screen name="Card Privacy Statement" component={CardPrivacyStatement} options={{
headerStyle: { backgroundColor: '#CFB368' },
headerTitleContainerStyle: { alignContent: 'center' },
headerTitleAlign: 'center',
headerTintColor: '#fff',
headerTitleStyle: {
alignSelf: 'center',
fontFamily: 'Gotham-Black',
fontSize: 20,
color: 'white',
textAlign: 'center'
}, title: i18n.t('headerPrivacyPolicy')
}} />
<Stack.Screen name="Transfer Balance" component={TransferBalance} options={{ <Stack.Screen name="Transfer Balance" component={TransferBalance} options={{
headerStyle: { backgroundColor: "#CFB368" }, headerStyle: { backgroundColor: "#CFB368" },
headerBackTitleStyle: { color: 'white' }, headerBackTitleStyle: { color: 'white' },
...@@ -520,7 +563,7 @@ class Auth extends React.Component { ...@@ -520,7 +563,7 @@ class Auth extends React.Component {
fontSize: 20, fontSize: 20,
color: 'white', color: 'white',
textAlign: 'center' textAlign: 'center'
}, title:i18n.t('headerAddressDetail') }, title: i18n.t('headerAddressDetail')
}} /> }} />
<Stack.Screen name="Edit Address" component={EditAddressDetail} options={{ <Stack.Screen name="Edit Address" component={EditAddressDetail} options={{
headerStyle: { backgroundColor: '#CFB368' }, headerStyle: { backgroundColor: '#CFB368' },
......
...@@ -26,7 +26,7 @@ class CardActivation extends React.Component { ...@@ -26,7 +26,7 @@ class CardActivation extends React.Component {
} }
} }
onPressButton = () => { checkCard = () => {
// Modifikasi Aktivasi Kartu | Function Disable Edit + Check Card API // Modifikasi Aktivasi Kartu | Function Disable Edit + Check Card API
let params = { let params = {
session_id: this.props.session_id, session_id: this.props.session_id,
...@@ -342,8 +342,8 @@ class CardActivation extends React.Component { ...@@ -342,8 +342,8 @@ class CardActivation extends React.Component {
</View> </View>
<View style={styles.button}> <View style={styles.button}>
{this.state.onclick == true ? (null) : ( {this.state.onclick == true ? (null) : (
<TouchableOpacity style={{ top: 25 }} onPress={() => this.handleToken()}> <TouchableOpacity disabled={this.state.mobile_phone.length<1} style={{ top: 25 }} onPress={() => this.handleToken()}>
<View style={{ height: 40, borderRadius: 10, backgroundColor: '#CFB368', justifyContent: 'center' }}> <View style={{ height: 40, borderRadius: 10, backgroundColor: this.state.mobile_phone.length<1 ? '#e3e3e3' : '#CFB368', justifyContent: 'center' }}>
<Text style={{ fontFamily: 'Gotham-Black', color: 'white', fontSize: 20, textAlign: 'center', margin: 10 }}>{i18n.t('sendtoken')}</Text> <Text style={{ fontFamily: 'Gotham-Black', color: 'white', fontSize: 20, textAlign: 'center', margin: 10 }}>{i18n.t('sendtoken')}</Text>
</View> </View>
</TouchableOpacity> </TouchableOpacity>
...@@ -395,8 +395,8 @@ class CardActivation extends React.Component { ...@@ -395,8 +395,8 @@ class CardActivation extends React.Component {
{/* Modifikasi Aktivasi Kartu | Cek Kartu */} {/* Modifikasi Aktivasi Kartu | Cek Kartu */}
<View style={styles.button}> <View style={styles.button}>
<TouchableOpacity style={{ top: 25 }} onPress={this.onPressButton}> <TouchableOpacity disabled={this.state.card_number.length<1} style={{ top: 25 }} onPress={this.checkCard}>
<View style={{ height: 40, borderRadius: 10, backgroundColor: '#CFB368', justifyContent: 'center' }}> <View style={{ height: 40, borderRadius: 10, backgroundColor: this.state.card_number.length<1 ? '#e3e3e3' : '#CFB368', justifyContent: 'center' }}>
<Text style={{ fontFamily: 'Gotham-Black', color: 'white', fontSize: 20, textAlign: 'center', margin: 10 }}>{i18n.t('check')}</Text> <Text style={{ fontFamily: 'Gotham-Black', color: 'white', fontSize: 20, textAlign: 'center', margin: 10 }}>{i18n.t('check')}</Text>
</View> </View>
</TouchableOpacity> </TouchableOpacity>
...@@ -433,7 +433,7 @@ class CardActivation extends React.Component { ...@@ -433,7 +433,7 @@ class CardActivation extends React.Component {
<ListItem style={{ borderBottomColor: 'white', alignItems: 'center', alignContent: 'center' }}> <ListItem style={{ borderBottomColor: 'white', alignItems: 'center', alignContent: 'center' }}>
<CheckBox color="#CFB368" checked={this.state.terms_condition} onPress={() => this.checkboxPressed()} /> <CheckBox color="#CFB368" checked={this.state.terms_condition} onPress={() => this.checkboxPressed()} />
<Body> <Body>
<TouchableWithoutFeedback onPress={() => this.props.navigation.navigate('Privacy Statement')}> <TouchableWithoutFeedback onPress={() => {this.props.navigation.navigate('Card Privacy Statement', {card_number:this.state.card_number})}}>
<Text style={{ marginLeft: 16, color: '#CFB368', fontWeight: 'bold' }}>{i18n.t('accept_terms_condition')}</Text> <Text style={{ marginLeft: 16, color: '#CFB368', fontWeight: 'bold' }}>{i18n.t('accept_terms_condition')}</Text>
</TouchableWithoutFeedback> </TouchableWithoutFeedback>
</Body> </Body>
......
import Axios from 'axios';
import React from 'react';
import { Alert, StyleSheet, View, ImageBackground, Text } from 'react-native';
import { ScrollView } from 'react-native-gesture-handler';
import Spinner from 'react-native-loading-spinner-overlay';
import HTML from 'react-native-render-html';
import MyStatusBar from './MyStatusBar';
import { connect } from 'react-redux';
function CardPrivacyStatement({route, navigation}) {
const { card_number } = route.params;
return (
<View style={styles.content}>
<Text>{JSON.stringify(card_number)}</Text>
</View>
)
}
// class CardPrivacyStatement extends React.Component {
// constructor(props) {
// super(props);
// this.state = {
// contentID: '',
// contentEN: '',
// card_number: "",
// img_card: "",
// spinner: true,
// }
// }
// componentDidMount() {
// try {
// this.getCardPrivacyStatement()
// } catch (error) {
// Alert.alert('Error', + error)
// }
// console.log(this.props.language)
// }
// getCardPrivacyStatement() {
// try {
// Axios.get(this.props.BASE_URL + 'cms/v2/detail/privacy-statement').then(res => {
// // console.log('ini res data nya : ' + JSON.stringify(res.data))
// const respon = res.data
// this.setState({
// contentID: respon.content,
// contentEN: respon.content2,
// spinner: false
// })
// })
// } catch (error) {
// Alert.alert('Error:' + error)
// }
// }
// render() {
// // console.log(this.state.content)
// try {
// return (
// <View style={styles.container}>
// <MyStatusBar />
// <Spinner
// visible={this.state.spinner}
// textContent={'Loading...'}
// textStyle={{ color: 'white' }}
// animation={'fade'}
// color={'white'}
// overlayColor={'#838383'}
// />
// <ScrollView style={styles.body}>
// {/* <View style={styles.image_container(this.state.image_height)}>
// <Image style={styles.image(this.state.image_height)} source={this.state.image ? { uri: this.state.image } : null} />
// </View> */}
// <View style={styles.content}>
// {/* {
// this.props.language == 'en' ? (
// <HTML html={this.state.contentEN} tagsStyles={{
// p: { fontSize: 12, color: '#838383', fontFamily: 'Gotham-Light', marginVertical: 1.5 },
// blockquote: { backgroundColor: "#f1f1f1", padding: 12, paddingBottom: 0, marginTop: 0 },
// li: { fontSize: 12, color: '#838383', fontFamily: 'Gotham-Light', marginBottom: 0 },
// ul: { fontSize: 12, color: '#838383', fontFamily: 'Gotham-Light', marginVertical: 5, marginBottom: -10 },
// }}
// ignoredTags={['br']}
// ignoredStyles={['font-family', '&nbsp;', '&amp;']} />
// ) : (
// <HTML html={this.state.contentID} tagsStyles={{
// p: { fontSize: 12, color: '#838383', fontFamily: 'Gotham-Light', marginVertical: 1.5 },
// blockquote: { backgroundColor: "#f1f1f1", padding: 12, paddingBottom: 0, marginTop: 0 },
// li: { fontSize: 12, color: '#838383', fontFamily: 'Gotham-Light', marginBottom: 0 },
// ul: { fontSize: 12, color: '#838383', fontFamily: 'Gotham-Light', marginVertical: 5, marginBottom: -10 },
// }}
// ignoredTags={['br']}
// ignoredStyles={['font-family', '&nbsp;', '&amp;']} />
// )
// } */}
// <Text>Kartu</Text>
// </View>
// </ScrollView>
// </View>
// )
// } catch (error) {
// Alert.alert('Error' + error)
// }
// }
// }
const styles = StyleSheet.create({
// container: {
// flex: 1,
// backgroundColor: 'white',
// },
// header: {
// height: 60,
// paddingHorizontal: 5,
// flexDirection: 'row',
// backgroundColor: '#CFB368',
// alignItems: 'center'
// },
// headerTitle: {
// flex: 1,
// textAlign: 'center',
// margin: 20,
// fontSize: 23,
// alignSelf: 'center',
// color: 'white',
// fontFamily: 'Gotham-Black'
// },
// image_container: (height) => ({
// height: height,
// backgroundColor: 'gray'
// }),
// image: (height) => ({
// width: '100%',
// height: height
// }),
// title: {
// textAlign: 'center',
// fontFamily: 'Gotham-Black',
// fontSize: 22,
// marginBottom: 10,
// color: '#CFB368'
// },
content: {
paddingHorizontal: 25,
paddingVertical: 30
},
// body: {
// }
})
const mapStateToProps = (state) => {
return {
language: state.language,
BASE_URL: state.BASE_URL,
}
}
export default connect(mapStateToProps)(CardPrivacyStatement);
...@@ -29,7 +29,7 @@ class PrivacyStatement extends React.Component { ...@@ -29,7 +29,7 @@ class PrivacyStatement extends React.Component {
getPrivacyStatement() { getPrivacyStatement() {
try { try {
Axios.get(this.props.BASE_URL + 'cms/v2/detail/privacy-statement').then(res => { Axios.get(this.props.BASE_URL + 'cms/v2/detail/privacy-statement' ).then(res => {
// console.log('ini res data nya : ' + JSON.stringify(res.data)) // console.log('ini res data nya : ' + JSON.stringify(res.data))
const respon = res.data const respon = res.data
this.setState({ this.setState({
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment