|
1 | 1 | import { Request, Response } from "express"; |
2 | 2 | import * as memberService from "../services/member.service"; |
3 | 3 | import { ApiError } from "../utils/apiError"; |
4 | | -import { deleteImage, uploadImage } from "../utils/imageUtils"; |
| 4 | +import { uploadImage } from "../utils/imageUtils"; |
5 | 5 | import { SupabaseClient } from "@supabase/supabase-js"; |
6 | 6 |
|
7 | 7 | // List all approved members |
@@ -72,29 +72,31 @@ export const createAMember = |
72 | 72 | // Update an existing member |
73 | 73 | export const updateAMember = |
74 | 74 | (supabase: SupabaseClient) => async (req: Request, res: Response) => { |
75 | | - const { memberId } = req.params; |
| 75 | + |
| 76 | + const { memberId } = req.params; |
76 | 77 |
|
77 | 78 | if(!memberId) throw new ApiError("No memberId provided", 400); |
78 | 79 |
|
79 | | - const body = req.body; |
| 80 | + const parsedBody = JSON.parse(req.body.memberData); |
| 81 | + let imageUrl: undefined | string; |
80 | 82 |
|
81 | 83 | if (req.file) { |
82 | 84 | const oldData = await memberService.getDetails(memberId); |
83 | 85 | const oldImage = oldData?.profilePhoto; |
84 | 86 |
|
85 | 87 | if(oldImage) await uploadImage(supabase, req.file, "members", oldImage); |
86 | | - |
87 | | - const imageUrl = await uploadImage(supabase, req.file, "members"); |
88 | | - body.profilePhoto = imageUrl; |
| 88 | + else imageUrl = await uploadImage(supabase, req.file, "members"); |
89 | 89 | } |
| 90 | + if (imageUrl) parsedBody.profilePhoto = imageUrl; |
90 | 91 |
|
91 | | - await memberService.updateMember(memberId, body); |
| 92 | + await memberService.updateMember(memberId, parsedBody); |
92 | 93 |
|
93 | 94 | const updatedData = await memberService.getDetails(memberId); |
94 | 95 | res |
95 | 96 | .status(200) |
96 | 97 | .json({ success: true, user: updatedData }); |
97 | | - }; |
| 98 | +}; |
| 99 | + |
98 | 100 |
|
99 | 101 | // Get all unapproved members |
100 | 102 | export const getUnapprovedMembers = async (req: Request, res: Response) => { |
|
0 commit comments