import React from 'react';
import {
Container,
Content,
Left,
ListItem,
Right,
Text,
List,
CheckBox,
Body,
CardItem,
Card,
Picker,
} from "native-base";
import CustomHeader from "../components/CustomHeader";
import ThemeManager from '../utils/ThemeManager';
import i18n from "i18n-js";
import {NavigationActions, StackActions} from "react-navigation";
import CustomMaterialIcon from "../components/CustomMaterialIcon";
import {AsyncStorage} from 'react-native'
const proxiwashNotifKey = "proxiwashNotifKey";
export default class SettingsScreen extends React.Component {
state = {
nightMode: ThemeManager.getInstance().getNightMode(),
proxiwashNotifPickerSelected: "5"
};
async componentWillMount() {
let val = await AsyncStorage.getItem(proxiwashNotifKey);
if (val === null)
val = "5";
this.setState({
proxiwashNotifPickerSelected: val,
});
}
onProxiwashNotidPickerValueChange(value) {
AsyncStorage.setItem(proxiwashNotifKey, value);
this.setState({
proxiwashNotifPickerSelected: value
});
}
getproxiwashNotifPicker() {
return (
this.onProxiwashNotidPickerValueChange(value)}
>
);
}
toggleNightMode() {
ThemeManager.getInstance().setNightmode(!this.state.nightMode);
this.setState({nightMode: !this.state.nightMode});
// Alert.alert(i18n.t('settingsScreen.nightMode'), i18n.t('settingsScreen.restart'));
this.resetStack();
}
resetStack() {
const resetAction = StackActions.reset({
index: 0,
key: null,
actions: [NavigationActions.navigate({routeName: 'Main'})],
});
this.props.navigation.dispatch(resetAction);
this.props.navigation.navigate('Settings');
}
getToggleItem(onPressCallback, icon, text, subtitle) {
return (
{text}
{subtitle}
this.toggleNightMode()}/>
);
}
getGeneralItem(control, icon, text, subtitle) {
return (
{text}
{subtitle}
{control}
);
}
render() {
const nav = this.props.navigation;
return (
{i18n.t('settingsScreen.appearanceCard')}
{this.getToggleItem(() => this.toggleNightMode(), 'theme-light-dark', i18n.t('settingsScreen.nightMode'), i18n.t('settingsScreen.nightModeSub'))}
Proxiwash
{this.getGeneralItem(this.getproxiwashNotifPicker(), 'washing-machine', i18n.t('settingsScreen.proxiwashNotifReminder'), i18n.t('settingsScreen.proxiwashNotifReminderSub'))}
);
}
}