]> source.dussan.org Git - gitea.git/commitdiff
config option: Require sign in to view repository
authorUnknown <joe2010xtmf@163.com>
Fri, 21 Mar 2014 05:59:15 +0000 (01:59 -0400)
committerUnknown <joe2010xtmf@163.com>
Fri, 21 Mar 2014 05:59:15 +0000 (01:59 -0400)
conf/app.ini
modules/base/conf.go
modules/middleware/auth.go
web.go

index d38cd1f05e7b228e3fee7c152560163a3837bd0b..d4fdc0dcf7865cf517664caceb73e57571311150 100644 (file)
@@ -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
index 42d50da4f3cf74fd649778dafd7cfc777b8c44ab..3050b915fabd7e1643b252293258707a7f8bdeb2 100644 (file)
@@ -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() {
index 44033abb8f4d835b27217e6078876dba3989f891..f211de32b9030c0195b9c7dc7731d08ebf07813f 100644 (file)
@@ -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 {
diff --git a/web.go b/web.go
index 648cb9d79cc6c619fbf6e8a8aeb5709212518f6f..6fe838aa78a2483180f41296421ce05d6856feaf 100644 (file)
--- a/web.go
+++ b/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)