Skip to content

Commit

Permalink
Updates
Browse files Browse the repository at this point in the history
  • Loading branch information
ahmad-masud committed Dec 22, 2024
1 parent 3b1e074 commit ebb1793
Show file tree
Hide file tree
Showing 2 changed files with 44 additions and 41 deletions.
82 changes: 42 additions & 40 deletions src/context/usercontext.js
Original file line number Diff line number Diff line change
Expand Up @@ -28,55 +28,55 @@ export const UserProvider = ({ children }) => {
return cachedUser ? decryptData(cachedUser) : null;
});

const [premiumInfo, setPremiumInfo] = useState(() => {
const cachedPremiumInfo = localStorage.getItem("premiumInfo");
return cachedPremiumInfo
? decryptData(cachedPremiumInfo)
: {
premium: false,
subscriptionId: "",
canceled: false,
customerId: "",
subscriptionEnd: null,
};
const [premiumInfo, setPremiumInfo] = useState({
premium: false,
subscriptionId: "",
canceled: false,
customerId: "",
subscriptionEnd: null,
});

const fetchPremiumInfo = async (userId) => {
try {
const userRef = doc(firestore, "users", userId);
const docSnap = await getDoc(userRef);
if (docSnap.exists()) {
const userData = docSnap.data();
if (userData.premiumInfo) {
setPremiumInfo({
premium: userData.premiumInfo.premium || false,
subscriptionId: userData.premiumInfo.subscriptionId || "",
canceled: userData.premiumInfo.canceled || false,
customerId: userData.premiumInfo.stripeCustomerId || "",
subscriptionEnd: userData.premiumInfo.subscriptionEnd || null,
});
}
} else {
throw new Error("User document does not exist.");
}
} catch (error) {
console.error("Error fetching premium info: ", error);
setPremiumInfo({
premium: false,
subscriptionId: "",
canceled: false,
customerId: "",
subscriptionEnd: null,
});
}
};

useEffect(() => {
if (user) {
const userRef = doc(firestore, "users", user.uid);
getDoc(userRef)
.then((docSnap) => {
if (docSnap.exists()) {
const userData = docSnap.data();
if (userData.premiumInfo) {
const updatedPremiumInfo = {
premium: userData.premiumInfo.premium || false,
subscriptionId: userData.premiumInfo.subscriptionId || "",
canceled: userData.premiumInfo.canceled || false,
customerId: userData.premiumInfo.stripeCustomerId || "",
subscriptionEnd: userData.premiumInfo.subscriptionEnd || null,
};
setPremiumInfo(updatedPremiumInfo);
localStorage.setItem(
"premiumInfo",
encryptData(updatedPremiumInfo)
);
}
}
})
.catch((error) => {
console.error("Error fetching user data: ", error);
});
fetchPremiumInfo(user.uid);
} else {
const defaultPremiumInfo = {
setPremiumInfo({
premium: false,
subscriptionId: "",
canceled: false,
customerId: "",
subscriptionEnd: null,
};
setPremiumInfo(defaultPremiumInfo);
localStorage.removeItem("premiumInfo");
});
}
}, [user]);

Expand All @@ -89,7 +89,9 @@ export const UserProvider = ({ children }) => {
}, [user]);

return (
<UserContext.Provider value={{ user, setUser, premiumInfo }}>
<UserContext.Provider
value={{ user, setUser, premiumInfo, fetchPremiumInfo }}
>
{children}
</UserContext.Provider>
);
Expand Down
3 changes: 2 additions & 1 deletion src/pages/problems.js
Original file line number Diff line number Diff line change
Expand Up @@ -393,7 +393,8 @@ const Problems = ({ page }) => {
</div>
)}
</div>
{currentProblems.length > 0 && (solutions.length > 0 || page === "companies")
{currentProblems.length > 0 &&
(solutions.length > 0 || page === "companies")
? currentProblems.map((problem, index) => (
<div className="table-row" key={index}>
<div className="check">
Expand Down

0 comments on commit ebb1793

Please # to comment.