| 12 | ) |
| 13 | |
| 14 | func init() { |
| 15 | var FilterUser = func(ctx *context.Context) { |
| 16 | _, ok := ctx.Input.Session(conf.LoginSessionName).(models.Member) |
| 17 | |
| 18 | if !ok { |
| 19 | if ctx.Input.IsAjax() { |
| 20 | jsonData := make(map[string]interface{}, 3) |
| 21 | |
| 22 | jsonData["errcode"] = 403 |
| 23 | jsonData["message"] = "请登录后再操作" |
| 24 | returnJSON, _ := json.Marshal(jsonData) |
| 25 | |
| 26 | ctx.ResponseWriter.Write(returnJSON) |
| 27 | } else { |
| 28 | ctx.Redirect(302, beego.URLFor("AccountController.Login")) |
| 29 | } |
| 30 | } |
| 31 | } |
| 32 | beego.InsertFilter("/manager", beego.BeforeRouter, FilterUser) |
| 33 | beego.InsertFilter("/manager/*", beego.BeforeRouter, FilterUser) |
| 34 | beego.InsertFilter("/setting", beego.BeforeRouter, FilterUser) |
| 35 | beego.InsertFilter("/setting/*", beego.BeforeRouter, FilterUser) |
| 36 | beego.InsertFilter("/book", beego.BeforeRouter, FilterUser) |
| 37 | beego.InsertFilter("/book/*", beego.BeforeRouter, FilterUser) |
| 38 | beego.InsertFilter("/api/*", beego.BeforeRouter, FilterUser) |
| 39 | |
| 40 | var FinishRouter = func(ctx *context.Context) { |
| 41 | ctx.ResponseWriter.Header().Add("Application", "BookStack") |
| 42 | ctx.ResponseWriter.Header().Add("Version", utils.Version) |
| 43 | } |
| 44 | beego.InsertFilter("/*", beego.BeforeRouter, FinishRouter, false) |
| 45 | beego.SetStaticPath("/sitemap", "sitemap") |
| 46 | } |