Merge remote-tracking branch 'origin/develop' into feature/level-file-upload

This commit is contained in:
Carlos Mesquita
2024-09-02 22:21:40 +01:00
3 changed files with 8 additions and 12 deletions

View File

@@ -143,7 +143,11 @@ const UserCard = ({
}, [users, referralAgent]);
const updateUser = () => {
if ((user.type === "corporate" || user.type === "mastercorporate") && (!paymentValue || paymentValue < 0))
if (
(user.type === "corporate" || user.type === "mastercorporate") &&
(!paymentValue || paymentValue < 0) &&
["admin", "developer"].includes(loggedInUser.type)
)
return toast.error("Please set a price for the user's package before updating!");
if (!confirm(`Are you sure you want to update ${user.name}'s account?`)) return;

View File

@@ -126,7 +126,7 @@ async function post(req: NextApiRequest, res: NextApiResponse) {
const corporateSnapshot = await getDocs(corporateQ);
if (!corporateSnapshot.empty) {
const corporateUser = corporateSnapshot.docs[0].data() as CorporateUser;
const corporateUser = {...corporateSnapshot.docs[0].data(), id: corporateSnapshot.docs[0].id} as CorporateUser;
await setDoc(doc(db, "codes", code), {creator: corporateUser.id}, {merge: true});
const q = query(

View File

@@ -45,8 +45,6 @@ async function del(req: NextApiRequest, res: NextApiResponse) {
const targetUser = {...docTargetUser.data(), id: docTargetUser.id} as User;
if (user.type === "corporate" && (targetUser.type === "student" || targetUser.type === "teacher")) {
res.json({ok: true});
const userParticipantGroup = await getDocs(query(collection(db, "groups"), where("participants", "array-contains", id)));
await Promise.all([
...userParticipantGroup.docs
@@ -66,14 +64,6 @@ async function del(req: NextApiRequest, res: NextApiResponse) {
return;
}
const permission = PERMISSIONS.deleteUser[targetUser.type];
if (!permission.list.includes(user.type)) {
res.status(403).json({ok: false});
return;
}
res.json({ok: true});
await auth.deleteUser(id);
await deleteDoc(doc(db, "users", id));
const userCodeDocs = await getDocs(query(collection(db, "codes"), where("userId", "==", id)));
@@ -96,6 +86,8 @@ async function del(req: NextApiRequest, res: NextApiResponse) {
),
),
]);
res.json({ok: true});
}
async function get(req: NextApiRequest, res: NextApiResponse) {