Add multilanguage support
This commit is contained in:
parent
f8cbcb2908
commit
fc53bb14a0
15 changed files with 489 additions and 92 deletions
|
@ -3,6 +3,7 @@ import { SafeAreaView, ScrollView, StyleSheet, Switch, TouchableOpacity, } from
|
|||
import { useNavigation } from '@react-navigation/native';
|
||||
import { DateTimePickerAndroid, DateTimePickerEvent } from '@react-native-community/datetimepicker';
|
||||
import { useSelector } from 'react-redux';
|
||||
import { useTranslation } from 'react-i18next';
|
||||
|
||||
import { Colors } from '@/lib/constants/Colors';
|
||||
import { useColorScheme } from '@/lib/hooks/useColorScheme';
|
||||
|
@ -19,6 +20,7 @@ export default function CategoryScreen() {
|
|||
const colorScheme = useColorScheme() ?? 'light';
|
||||
const navigation = useNavigation();
|
||||
const { token } = useToken();
|
||||
const { t } = useTranslation();
|
||||
const session = useSelector( (state: any) => state.data.session );
|
||||
|
||||
const [ sessionSet, setSessionSet ] = useState( false );
|
||||
|
@ -34,7 +36,7 @@ export default function CategoryScreen() {
|
|||
// Set page title
|
||||
useEffect( () => {
|
||||
// Set page title
|
||||
navigation.setOptions( { title: ( 'Notificaties' ) } );
|
||||
navigation.setOptions( { title: ( t( "notifications" ) ) } );
|
||||
}, [] );
|
||||
|
||||
// Set session data
|
||||
|
@ -80,8 +82,8 @@ export default function CategoryScreen() {
|
|||
onChange,
|
||||
mode: 'time',
|
||||
is24Hour: true,
|
||||
positiveButton: { label: 'Kies' },
|
||||
negativeButton: { label: 'Sluiten' },
|
||||
positiveButton: { label: t( "choose" ) },
|
||||
negativeButton: { label: t( "close" ) },
|
||||
} );
|
||||
}
|
||||
}
|
||||
|
@ -97,14 +99,14 @@ export default function CategoryScreen() {
|
|||
if (currentEdit === 'dayBefore') {
|
||||
const minDate = new Date( `1970-01-01T16:00` );
|
||||
if (minDate > selectedDate) {
|
||||
Message.error( 'Meldingen voor 16:00 worden niet ondersteund' );
|
||||
Message.error( t( "notifications-before-16-00" ) );
|
||||
|
||||
return;
|
||||
}
|
||||
} else {
|
||||
const minDate = new Date( `1970-01-01T09:00` );
|
||||
if (minDate < selectedDate) {
|
||||
Message.error( 'Meldingen na 09:00 worden niet ondersteund' );
|
||||
Message.error( t( "notifications-after-09-00" ) );
|
||||
|
||||
return;
|
||||
}
|
||||
|
@ -141,7 +143,7 @@ export default function CategoryScreen() {
|
|||
if (response.success) {
|
||||
store.dispatch( setSession( response.session ) );
|
||||
} else {
|
||||
Message.error( 'Er ging iets mis. Probeer het later opnieuw.' );
|
||||
Message.error( t( "something-went-wrong" ) );
|
||||
}
|
||||
} )
|
||||
}
|
||||
|
@ -159,19 +161,19 @@ export default function CategoryScreen() {
|
|||
style={styles.listSwitch}
|
||||
onValueChange={() => toggleDate( 'dayBefore' )}
|
||||
/>
|
||||
<ThemedText type="defaultSemiBold">Dag van te voren</ThemedText>
|
||||
<ThemedText type="defaultSemiBold">{t( "day-before" )}</ThemedText>
|
||||
</ThemedView>
|
||||
|
||||
{isDayBeforeEnabled ?
|
||||
(
|
||||
<TouchableOpacity style={styles.listEdit} onPress={() => selectTime( 'dayBefore' )}>
|
||||
<ThemedText style={styles.listEditText}>Om {dayBefore}</ThemedText>
|
||||
<ThemedText style={styles.listEditText}>{t( "at" )} {dayBefore}</ThemedText>
|
||||
<ThemedIcon size={18} name="chevron-forward" style={styles.listEditIcon}/>
|
||||
</TouchableOpacity>
|
||||
) :
|
||||
(
|
||||
<ThemedText style={styles.listEdit}>
|
||||
<ThemedText style={styles.listEditText}>Uit</ThemedText>
|
||||
<ThemedText style={styles.listEditText}>{t( "off" )}</ThemedText>
|
||||
</ThemedText>
|
||||
)
|
||||
}
|
||||
|
@ -188,19 +190,19 @@ export default function CategoryScreen() {
|
|||
style={styles.listSwitch}
|
||||
onValueChange={() => toggleDate( 'sameDay' )}
|
||||
/>
|
||||
<ThemedText type="defaultSemiBold">Op de ophaaldag</ThemedText>
|
||||
<ThemedText type="defaultSemiBold">{t( "same-day" )}</ThemedText>
|
||||
</ThemedView>
|
||||
|
||||
{isSameDayEnabled ?
|
||||
(
|
||||
<TouchableOpacity style={styles.listEdit} onPress={() => selectTime( 'sameDay' )}>
|
||||
<ThemedText style={styles.listEditText}>Om {sameDay}</ThemedText>
|
||||
<ThemedText style={styles.listEditText}>{t( "at" )} {sameDay}</ThemedText>
|
||||
<ThemedIcon size={18} name="chevron-forward" style={styles.listEditIcon}/>
|
||||
</TouchableOpacity>
|
||||
) :
|
||||
(
|
||||
<ThemedView style={styles.listEdit}>
|
||||
<ThemedText style={styles.listEditText}>Uit</ThemedText>
|
||||
<ThemedText style={styles.listEditText}>{t( "off" )}</ThemedText>
|
||||
</ThemedView>
|
||||
)
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue