Browse Source

config option: Require sign in to view repository

pull/32/head
Unknown 11 years ago
parent
commit
5373a3093e
  1. 2
      conf/app.ini
  2. 2
      modules/base/conf.go
  3. 2
      modules/middleware/auth.go
  4. 3
      web.go

2
conf/app.ini

@ -42,6 +42,8 @@ RESET_PASSWD_CODE_LIVE_MINUTES = 180
REGISTER_EMAIL_CONFIRM = false
; Does not allow register and admin create account only
DISENABLE_REGISTERATION = false
; User must sign in to view anything.
REQUIRE_SIGNIN_VIEW = false
[mailer]
ENABLED = false

2
modules/base/conf.go

@ -41,6 +41,7 @@ var (
var Service struct {
RegisterEmailConfirm bool
DisenableRegisteration bool
RequireSignInView bool
ActiveCodeLives int
ResetPwdCodeLives int
}
@ -70,6 +71,7 @@ func newService() {
Service.ActiveCodeLives = Cfg.MustInt("service", "ACTIVE_CODE_LIVE_MINUTES", 180)
Service.ResetPwdCodeLives = Cfg.MustInt("service", "RESET_PASSWD_CODE_LIVE_MINUTES", 180)
Service.DisenableRegisteration = Cfg.MustBool("service", "DISENABLE_REGISTERATION", false)
Service.RequireSignInView = Cfg.MustBool("service", "REQUIRE_SIGNIN_VIEW", false)
}
func newLogService() {

2
modules/middleware/auth.go

@ -15,7 +15,7 @@ func SignInRequire(redirect bool) martini.Handler {
return func(ctx *Context) {
if !ctx.IsSigned {
if redirect {
ctx.Redirect("/")
ctx.Redirect("/user/login")
}
return
} else if !ctx.User.IsActive && base.Service.RegisterEmailConfirm {

3
web.go

@ -87,7 +87,8 @@ func runWeb(*cli.Context) {
m.Use(middleware.InitContext())
reqSignIn, ignSignIn := middleware.SignInRequire(true), middleware.SignInRequire(false)
reqSignIn := middleware.SignInRequire(true)
ignSignIn := middleware.SignInRequire(base.Service.RequireSignInView)
reqSignOut := middleware.SignOutRequire()
// Routers.
m.Get("/", ignSignIn, routers.Home)

Loading…
Cancel
Save