Skip to content

Commit f2ec9ef

Browse files
authored
Merge pull request #16 from Stackup-Rwanda/bg-pass-body-image-172767534
#172767534 allow the profile image to be passed from the body
2 parents 634d96a + a2f6e50 commit f2ec9ef

File tree

2 files changed

+35
-11
lines changed

2 files changed

+35
-11
lines changed

src/controllers/userProfile.js

+34-11
Original file line numberDiff line numberDiff line change
@@ -7,26 +7,49 @@ dotEnv.config();
77

88
export default class changeUserProfile {
99
static async getProfileInformation(request, response) {
10-
const myProfile = await models.User.findOne({ where: { id: request.user.id } });
11-
return response.status(200).json({ status: 200, user: returnProfile(myProfile) });
10+
try {
11+
const myProfile = await models.User.findOne({
12+
where: { id: request.user.id },
13+
});
14+
return response
15+
.status(200)
16+
.json({ status: 200, user: returnProfile(myProfile) });
17+
} catch (error) {
18+
return response.status(500).json({ status: 500, error });
19+
}
1220
}
1321

1422
static changeMyProfileInfo(request, response) {
15-
request.body.birthDay = validateDate(request.body.birthDay);
16-
request.body.profileImage = (typeof request.file === 'undefined') ? null : `${request.file.url}`;
17-
return models.User.update(request.body, { where: { id: request.user.id } })
18-
.then(() => models.User.findOne({ where: { id: request.user.id } }))
19-
.then((user) => {
20-
response.status(200).json({ status: 200, user: returnProfile(user) });
21-
});
23+
try {
24+
request.body.birthDay = validateDate(request.body.birthDay);
25+
request.body.profileImage =
26+
typeof request.file === 'undefined'
27+
? request.body.profileImage
28+
: `${request.file.url}`;
29+
return models.User.update(request.body, {
30+
where: { id: request.user.id },
31+
})
32+
.then(() => models.User.findOne({ where: { id: request.user.id } }))
33+
.then((user) => {
34+
response.status(200).json({ status: 200, user: returnProfile(user) });
35+
});
36+
} catch (error) {
37+
return response.status(500).json({ status: 500, error });
38+
}
2239
}
2340

2441
static async rememberMe(req, res) {
2542
try {
26-
const userInfo = await models.User.findOne({ where: { id: req.user.id } });
43+
const userInfo = await models.User.findOne({
44+
where: { id: req.user.id },
45+
});
2746
const { password, ...rest } = userInfo.dataValues;
2847
req.session.profileInfo = rest;
29-
return res.status(200).send({ status: 200, message: 'Your profile information is saved successfully', data: req.session.profileInfo });
48+
return res.status(200).send({
49+
status: 200,
50+
message: 'Your profile information is saved successfully',
51+
data: req.session.profileInfo,
52+
});
3053
} catch (error) {
3154
return res.status(500).json({ status: 500, error });
3255
}

src/db/models/user.js

+1
Original file line numberDiff line numberDiff line change
@@ -45,6 +45,7 @@ module.exports = (sequelize, DataTypes) => {
4545
profileImage: {
4646
allowNull: true,
4747
type: DataTypes.STRING,
48+
defaultValue: process.env.ProfileImage,
4849
},
4950
}, {});
5051
User.associate = () => {

0 commit comments

Comments
 (0)