Get donor info through /users/self/donor_info
This commit is contained in:
parent
92be078783
commit
61527882d1
|
@ -95,6 +95,7 @@ func Start(conf common.Conf, dbO *sqlx.DB) *gin.Engine {
|
||||||
// ReadConfidential privilege required
|
// ReadConfidential privilege required
|
||||||
gv1.GET("/friends", Method(v1.FriendsGET, common.PrivilegeReadConfidential))
|
gv1.GET("/friends", Method(v1.FriendsGET, common.PrivilegeReadConfidential))
|
||||||
gv1.GET("/friends/with", Method(v1.FriendsWithGET, common.PrivilegeReadConfidential))
|
gv1.GET("/friends/with", Method(v1.FriendsWithGET, common.PrivilegeReadConfidential))
|
||||||
|
gv1.GET("/users/self/donor_info", Method(v1.UsersSelfDonorInfoGET, common.PrivilegeReadConfidential))
|
||||||
|
|
||||||
// Write privilege required
|
// Write privilege required
|
||||||
gv1.GET("/friends/add", Method(v1.FriendsAddGET, common.PrivilegeWrite))
|
gv1.GET("/friends/add", Method(v1.FriendsAddGET, common.PrivilegeWrite))
|
||||||
|
|
24
app/v1/self.go
Normal file
24
app/v1/self.go
Normal file
|
@ -0,0 +1,24 @@
|
||||||
|
package v1
|
||||||
|
|
||||||
|
import "git.zxq.co/ripple/rippleapi/common"
|
||||||
|
|
||||||
|
type donorInfoResponse struct {
|
||||||
|
common.ResponseBase
|
||||||
|
HasDonor bool `json:"has_donor"`
|
||||||
|
Expiration common.UnixTimestamp `json:"expiration"`
|
||||||
|
}
|
||||||
|
|
||||||
|
// UsersSelfDonorInfoGET returns information about the users' donor status
|
||||||
|
func UsersSelfDonorInfoGET(md common.MethodData) common.CodeMessager {
|
||||||
|
var r donorInfoResponse
|
||||||
|
var privileges uint64
|
||||||
|
err := md.DB.QueryRow("SELECT privileges, donor_expire FROM users WHERE id = ?", md.ID()).
|
||||||
|
Scan(&privileges, &r.Expiration)
|
||||||
|
if err != nil {
|
||||||
|
md.Err(err)
|
||||||
|
return Err500
|
||||||
|
}
|
||||||
|
r.HasDonor = common.UserPrivileges(privileges)&common.UserPrivilegeDonor > 0
|
||||||
|
r.Code = 200
|
||||||
|
return r
|
||||||
|
}
|
Loading…
Reference in New Issue
Block a user