(operation string)
| 278 | } |
| 279 | |
| 280 | func (rt *Router) perm(operation string) gin.HandlerFunc { |
| 281 | return func(c *gin.Context) { |
| 282 | me := c.MustGet("user").(*models.User) |
| 283 | |
| 284 | can, err := me.CheckPerm(rt.Ctx, operation) |
| 285 | ginx.Dangerous(err) |
| 286 | |
| 287 | if !can { |
| 288 | ginx.Bomb(http.StatusForbidden, "forbidden") |
| 289 | } |
| 290 | |
| 291 | c.Next() |
| 292 | } |
| 293 | } |
| 294 | |
| 295 | func (rt *Router) admin() gin.HandlerFunc { |
| 296 | return func(c *gin.Context) { |