From 98dcac200f3d0831dccc90c08b839921b1b7ae6f Mon Sep 17 00:00:00 2001 From: Louison PARANT Date: Tue, 5 Dec 2023 09:42:46 +0100 Subject: [PATCH] Profile Management (Home/Profiles Pages) --- LeftOvers/components/ProfileDetails.tsx | 10 +++------- LeftOvers/components/ProfileElement.tsx | 2 +- LeftOvers/screens/CreateProfile.tsx | 9 +-------- LeftOvers/screens/HomePage.tsx | 26 ++++++++++++++----------- LeftOvers/screens/Profiles.tsx | 1 - 5 files changed, 20 insertions(+), 28 deletions(-) diff --git a/LeftOvers/components/ProfileDetails.tsx b/LeftOvers/components/ProfileDetails.tsx index c372b11..777397f 100644 --- a/LeftOvers/components/ProfileDetails.tsx +++ b/LeftOvers/components/ProfileDetails.tsx @@ -26,15 +26,11 @@ export default function ProfileDetails(props) { }; let imageSource - - if (props.avatar === "plus.png"){ - imageSource = require('../assets/images/plus.png') - } - else if (props.avatar === "plus_small.png"){ - imageSource = require('../assets/images/plus_small.png') + if (props.avatar == ""){ + imageSource = require("../assets/images/logo.png") } else{ - imageSource = require('../assets/images/logo.png') + imageSource = {uri: props.avatar} } const styles = StyleSheet.create({ diff --git a/LeftOvers/components/ProfileElement.tsx b/LeftOvers/components/ProfileElement.tsx index 28fb4fe..c75b8d9 100644 --- a/LeftOvers/components/ProfileElement.tsx +++ b/LeftOvers/components/ProfileElement.tsx @@ -36,7 +36,7 @@ export default function ProfileElement(props : Profile) { } let imageSource - if(props.avatar == null){ + if(props.avatar == ""){ imageSource=require("../assets/images/logo.png") } else{ diff --git a/LeftOvers/screens/CreateProfile.tsx b/LeftOvers/screens/CreateProfile.tsx index 32bdf4f..52d3ade 100644 --- a/LeftOvers/screens/CreateProfile.tsx +++ b/LeftOvers/screens/CreateProfile.tsx @@ -41,13 +41,7 @@ export default function CreateProfile(props) { let imageSource - if (props.avatar == "plus.png"){ - imageSource = {uri: avatar} - } - else if (props.avatar == "plus_small.png"){ - imageSource = {uri: avatar} - } - else if (props.avatar == ""){ + if (props.avatar == ""){ imageSource = require("../assets/images/logo.png") } else{ @@ -72,7 +66,6 @@ export default function CreateProfile(props) { EventEmitter.emit('profileAdded'); console.log('Profil créé :', newProfile); props.navigation.goBack(); - alert('Profil créé !'); } catch (error) { console.error('Erreur lors de la création du profil :', error); } diff --git a/LeftOvers/screens/HomePage.tsx b/LeftOvers/screens/HomePage.tsx index b8897b7..4dd8d28 100644 --- a/LeftOvers/screens/HomePage.tsx +++ b/LeftOvers/screens/HomePage.tsx @@ -18,14 +18,10 @@ export default function HomePage({ navigation, props }) { const {colors} = useContext(ColorContext); const profilesHand = [ - {name: "Johnny Silverhand", avatar: "plus_small.png", isActive: "flex"}, - {name: "Panam Palmer", avatar: "plus_small.png", isActive: "none"}, - {name: "Goro Takemura", avatar: "plus_small.png", isActive: "none"}, - {name: "David Martinez", avatar: "plus_small.png", isActive: "flex"}, + {name: "None", avatar: "logo.png", isActive: "none"} ] - const [profiles, setProfiles] = useState([{name: "None", avatar: "plus_small.png", isActive: "none"}]); - console.log(profiles, profiles.length) + const [profiles, setProfiles] = useState(profilesHand); const handleGetProfiles = async () => { try { @@ -39,7 +35,13 @@ export default function HomePage({ navigation, props }) { const fetchProfiles = async () => { const existingProfiles = await handleGetProfiles(); - setProfiles(existingProfiles); + console.log("Existing Profiles: ---------------------------------"+existingProfiles, existingProfiles.length) + if (existingProfiles.length != 0){ + setProfiles(existingProfiles); + } + else{ + setProfiles(profilesHand) + } }; const subscription = EventEmitter.addListener('profileAdded', async () => { @@ -47,17 +49,19 @@ export default function HomePage({ navigation, props }) { }); const subscriptionDeleteProfile = EventEmitter.addListener('profileDeleted', async () => { - fetchProfiles(); + if (profiles.length == 1){ + setProfiles(profilesHand) + } + else{ + fetchProfiles(); + } }); useEffect(() => { fetchProfiles(); - console.log(profiles.length) if(profiles.length == 0){ setProfiles([{name: "None", avatar: "plus_small.png", isActive: "none"}]) - console.log("Je passe ici") } - console.log(profiles) }, []); const ingredientList = [{title: "Carrot"}, {title: "Potato"}, {title: "Peach"}] diff --git a/LeftOvers/screens/Profiles.tsx b/LeftOvers/screens/Profiles.tsx index 4a54ca6..331474c 100644 --- a/LeftOvers/screens/Profiles.tsx +++ b/LeftOvers/screens/Profiles.tsx @@ -48,7 +48,6 @@ export default function Profiles({navigation, props}) { fetchProfiles(); setSelectedProfileIndex(index); erasePopUp(); - alert('Profile Deleted!'); } catch (error) { console.error('Erreur lors de la suppression du profil :', error); }