Modif: Utilisation du store au lieu du currentUser
continuous-integration/drone/push Build is failing Details

Persistance
Thomas Chazot 2 years ago
parent be124d7576
commit ec69e86a5e

@ -9,6 +9,7 @@ import { SkinComponent } from '../components/Skin';
import { ButtonGreySmall } from '../components/ButtonGreySmall'; import { ButtonGreySmall } from '../components/ButtonGreySmall';
import { ScreenIndicator } from '../components/ScreenIndicator'; import { ScreenIndicator } from '../components/ScreenIndicator';
import { MANAGER_USER } from '../../App'; import { MANAGER_USER } from '../../App';
import { useUserStore } from '../../userContext';
const coin = require('../../assets/Icons/Coin.png') const coin = require('../../assets/Icons/Coin.png')
@ -24,22 +25,22 @@ function Profile(props: { navigation: any; }) {
/> />
<View style={stylesScreen.bodyStart}> <View style={stylesScreen.bodyStart}>
<ScreenIndicator title='Profil'/> <ScreenIndicator title='Profil'/>
<Text style={styles.pseudoText}>{MANAGER_USER.getCurrentUser().getUsername()}</Text> <Text style={styles.pseudoText}>{useUserStore().user?.getUsername()}</Text>
<View style={styles.coinSkinView}> <View style={styles.coinSkinView}>
<View style={styles.coinView}> <View style={styles.coinView}>
<Image <Image
style={styles.coin} style={styles.coin}
source={coin} source={coin}
/> />
<Text style={styles.coinText}>{MANAGER_USER.getCurrentUser().getCurrentCoins()}</Text> <Text style={styles.coinText}>{useUserStore().user?.getCurrentCoins()}</Text>
</View> </View>
<View style={styles.skinView}> <View style={styles.skinView}>
<SkinComponent skin={MANAGER_USER.getCurrentUser().getCurrentSkin()} state='profile' /> <SkinComponent skin={useUserStore().user?.getCurrentSkin()} state='profile' />
<ButtonGreySmall onPress={() => navigation.navigate('SkinList')} title='Changer de skin' state='Profile'/> <ButtonGreySmall onPress={() => navigation.navigate('SkinList')} title='Changer de skin' state='Profile'/>
</View> </View>
</View> </View>
<View style={styles.infoView}> <View style={styles.infoView}>
<Text style={styles.infoText}>Total de BobCoin gagnés: {MANAGER_USER.getCurrentUser().getTotalCoins()}</Text> <Text style={styles.infoText}>Total de BobCoin gagnés: {useUserStore().user?.getTotalCoins()}</Text>
<Text style={styles.infoText}>Total de BobCoin gagnés: </Text> <Text style={styles.infoText}>Total de BobCoin gagnés: </Text>
</View> </View>
</View> </View>

@ -29,14 +29,12 @@ function Settings(props: { navigation: any; }) {
function changeUsername(username:string){ function changeUsername(username:string){
MANAGER_USER.getCurrentUser()?.setUsername(username); MANAGER_USER.getCurrentUser()?.setUsername(username);
console.log(MANAGER_USER.getCurrentUser()?.getUsername());
setUser(MANAGER_USER.getCurrentUser()); setUser(MANAGER_USER.getCurrentUser());
MANAGER_USER.getsaverUser().updateUser(MANAGER_USER.getCurrentUser()); MANAGER_USER.getsaverUser().updateUser(MANAGER_USER.getCurrentUser());
} }
function changePassword(password:string){ function changePassword(password:string){
MANAGER_USER.getCurrentUser()?.setPassword(password); MANAGER_USER.getCurrentUser()?.setPassword(password);
console.log(MANAGER_USER.getCurrentUser()?.getPassword());
setUser(MANAGER_USER.getCurrentUser()); setUser(MANAGER_USER.getCurrentUser());
MANAGER_USER.getsaverUser().updateUser(MANAGER_USER.getCurrentUser()); MANAGER_USER.getsaverUser().updateUser(MANAGER_USER.getCurrentUser());
} }
@ -55,24 +53,24 @@ function Settings(props: { navigation: any; }) {
<View style={{flexDirection: 'row', justifyContent: 'space-between',}}> <View style={{flexDirection: 'row', justifyContent: 'space-between',}}>
<View> <View>
<View> <View>
<Text style={styles.text}>Pseudo: {MANAGER_USER.getCurrentUser().getUsername()}</Text> <Text style={styles.text}>Pseudo: {useUserStore().user?.getUsername()}</Text>
<ButtonGreySmall onPress={() => {console.log(dialogPseudoVisible); <ButtonGreySmall onPress={() => {console.log(dialogPseudoVisible);
;setDialogPseudoVisible(true)}} title='Changer le pseudo'/> ;setDialogPseudoVisible(true)}} title='Changer le pseudo'/>
</View> </View>
<View> <View>
<Text style={styles.text}>Mot de passe: {MANAGER_USER.getCurrentUser().getPassword()}</Text> <Text style={styles.text}>Mot de passe: {useUserStore().user?.getPassword()}</Text>
<ButtonGreySmall onPress={() => setDialogPasswordVisible(true) } title='Changer le mot de passe'/> <ButtonGreySmall onPress={() => setDialogPasswordVisible(true) } title='Changer le mot de passe'/>
</View> </View>
<View> <View>
<Text style={styles.text}>Nationalité: {MANAGER_USER.getCurrentUser().getNationality()}</Text> <Text style={styles.text}>Nationalité: {useUserStore().user?.getNationality()}</Text>
<PickerGreySmall title='Changer la nationalité' valueChange={(value:string) => setSelectedNationality(value)} donePress={() => dispatch(updateNationality(selectedNationality))} values={["Francais", "Anglais"]} /> <PickerGreySmall title='Changer la nationalité' valueChange={(value:string) => setSelectedNationality(value)} donePress={() => dispatch(updateNationality(selectedNationality))} values={["Francais", "Anglais"]} />
</View> </View>
<View> <View>
<Text style={styles.text}>Sexe: {MANAGER_USER.getCurrentUser().getSexe()}</Text> <Text style={styles.text}>Sexe: {useUserStore().user?.getSexe()}</Text>
<PickerGreySmall title='Changer le sexe' valueChange={(value:string) => setSelectedSex(value)} donePress={() => dispatch(updateSex(selectedSex))} values={["Homme", "Femme", "Autre"]} /> <PickerGreySmall title='Changer le sexe' valueChange={(value:string) => setSelectedSex(value)} donePress={() => dispatch(updateSex(selectedSex))} values={["Homme", "Femme", "Autre"]} />
</View> </View>
</View> </View>
<Text style={styles.textID}>ID: {MANAGER_USER.getCurrentUser().getId()}</Text> <Text style={styles.textID}>ID: {useUserStore().user?.getId()}</Text>
</View> </View>
</View> </View>
</View> </View>

@ -8,6 +8,7 @@ import { FlatList } from 'react-native-gesture-handler';
import { SkinComponent } from '../components/Skin'; import { SkinComponent } from '../components/Skin';
import { ScreenIndicator } from '../components/ScreenIndicator'; import { ScreenIndicator } from '../components/ScreenIndicator';
import { MANAGER_USER } from '../../App'; import { MANAGER_USER } from '../../App';
import { useUserStore } from '../../userContext';
function Store(props: { navigation: any; }) { function Store(props: { navigation: any; }) {
const { navigation } = props const { navigation } = props
@ -21,7 +22,7 @@ function Store(props: { navigation: any; }) {
<View style={stylesScreen.bodyStart}> <View style={stylesScreen.bodyStart}>
<ScreenIndicator title='Store'/> <ScreenIndicator title='Store'/>
<FlatList <FlatList
data={MANAGER_USER.getCurrentUser().getTabSkin()} data={useUserStore().user?.getTabSkin()}
numColumns={2} numColumns={2}
columnWrapperStyle={{ flex: 1, justifyContent: "space-around"}} columnWrapperStyle={{ flex: 1, justifyContent: "space-around"}}
keyExtractor={item =>item.getSkinName()} keyExtractor={item =>item.getSkinName()}

Loading…
Cancel
Save