diff options
author | zeripath <art27@cantab.net> | 2021-03-11 13:40:54 +0000 |
---|---|---|
committer | GitHub <noreply@github.com> | 2021-03-11 13:40:54 +0000 |
commit | c8e5c79cfda7e4c36b1a98c1abd3cdb50bde9d77 (patch) | |
tree | 538c00f48c8d03979b0323b057cb7bd3ed19b969 /routers/routes/web.go | |
parent | bc423a1e8445c01b5f590b86657c9a49b0bfdd8c (diff) | |
download | gitea-c8e5c79cfda7e4c36b1a98c1abd3cdb50bde9d77.tar.gz gitea-c8e5c79cfda7e4c36b1a98c1abd3cdb50bde9d77.zip |
Add ui.explore settings to control view of explore pages (2) (#14094)
This is an alternative PR to #13687.
Add `[ui.explore]` settings to allow restricting the
explore pages to logged in users only and to disable the users explore page.
The two proposed settings are:
- `REQUIRE_SIGNIN_VIEW`: Only allows access to the explore pages if the
user is signed in. Also restricts
- `/api/v1/user/search`
- `/api/v1/users/{username}`
- `/api/v1/users/{username}/repos`
- but does not restrict `/api/v1/users/{username}/heatmap`
- `DISABLE_USERS_PAGE`: Disables the /explore/users page
Fix #2908
Close #13687
Signed-off-by: Andrew Thornton <art27@cantab.net>
Co-authored-by: 6543 <6543@obermui.de>
Diffstat (limited to 'routers/routes/web.go')
-rw-r--r-- | routers/routes/web.go | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/routers/routes/web.go b/routers/routes/web.go index 22774b2cdc..08faa274a5 100644 --- a/routers/routes/web.go +++ b/routers/routes/web.go @@ -286,6 +286,7 @@ func goGet(ctx *context.Context) { func RegisterRoutes(m *web.Route) { reqSignIn := context.Toggle(&context.ToggleOptions{SignInRequired: true}) ignSignIn := context.Toggle(&context.ToggleOptions{SignInRequired: setting.Service.RequireSignInView}) + ignExploreSignIn := context.Toggle(&context.ToggleOptions{SignInRequired: setting.Service.RequireSignInView || setting.Service.Explore.RequireSigninView}) ignSignInAndCsrf := context.Toggle(&context.ToggleOptions{DisableCSRF: true}) reqSignOut := context.Toggle(&context.ToggleOptions{SignOutRequired: true}) @@ -335,7 +336,7 @@ func RegisterRoutes(m *web.Route) { m.Get("/users", routers.ExploreUsers) m.Get("/organizations", routers.ExploreOrganizations) m.Get("/code", routers.ExploreCode) - }, ignSignIn) + }, ignExploreSignIn) m.Get("/issues", reqSignIn, user.Issues) m.Get("/pulls", reqSignIn, user.Pulls) m.Get("/milestones", reqSignIn, reqMilestonesDashboardPageEnabled, user.Milestones) |