make /users/full show CM notes and ban date when token has PrivilegeManageUser

This commit is contained in:
Morgan Bazalgette 2017-11-20 14:33:58 +01:00
parent 366418f025
commit 8d92df534c
No known key found for this signature in database
GPG Key ID: 40D328300D245DA5

View File

@ -188,15 +188,17 @@ type modeData struct {
type userFullResponse struct {
common.ResponseBase
userData
STD modeData `json:"std"`
Taiko modeData `json:"taiko"`
CTB modeData `json:"ctb"`
Mania modeData `json:"mania"`
PlayStyle int `json:"play_style"`
FavouriteMode int `json:"favourite_mode"`
Badges []singleBadge `json:"badges"`
CustomBadge *singleBadge `json:"custom_badge"`
SilenceInfo silenceInfo `json:"silence_info"`
STD modeData `json:"std"`
Taiko modeData `json:"taiko"`
CTB modeData `json:"ctb"`
Mania modeData `json:"mania"`
PlayStyle int `json:"play_style"`
FavouriteMode int `json:"favourite_mode"`
Badges []singleBadge `json:"badges"`
CustomBadge *singleBadge `json:"custom_badge"`
SilenceInfo silenceInfo `json:"silence_info"`
CMNotes *string `json:"cm_notes,omitempty"`
BanDate *common.UnixTimestamp `json:"ban_date,omitempty"`
}
type silenceInfo struct {
Reason string `json:"reason"`
@ -236,7 +238,8 @@ SELECT
users_stats.replays_watched_mania, users_stats.total_hits_mania,
users_stats.avg_accuracy_mania, users_stats.pp_mania,
users.silence_reason, users.silence_end
users.silence_reason, users.silence_end,
users.notes, users.ban_datetime
FROM users
LEFT JOIN users_stats
@ -276,6 +279,7 @@ LIMIT 1
&r.Mania.Accuracy, &r.Mania.PP,
&r.SilenceInfo.Reason, &r.SilenceInfo.End,
&r.CMNotes, &r.BanDate,
)
switch {
case err == sql.ErrNoRows:
@ -317,6 +321,11 @@ LIMIT 1
r.Badges = append(r.Badges, badge)
}
if md.User.TokenPrivileges&common.PrivilegeManageUser == 0 {
r.CMNotes = nil
r.BanDate = nil
}
r.Code = 200
return r
}