// IsAdmin middleware for checking if the account is admin. func IsAdmin(ee engine.Exchange) sknet.HandlerFunc { return func(c *sknet.Context) error { var rlt *pp.EmptyRes for { req := pp.UpdateCreditReq{} if err := c.BindJSON(&req); err != nil { logger.Error(err.Error()) rlt = pp.MakeErrResWithCode(pp.ErrCode_WrongRequest) break } if !ee.IsAdmin(req.GetPubkey()) { logger.Error("not admin") rlt = pp.MakeErrResWithCode(pp.ErrCode_UnAuthorized) break } return c.Next() } return c.Error(rlt) } }