* fix not respecting landing page setting * fmt * add landing page testtags/v1.5.0-dev
@@ -68,3 +68,25 @@ func TestSettingShowUserEmailProfile(t *testing.T) { | |||
setting.UI.ShowUserEmail = showUserEmail | |||
} | |||
func TestSettingLandingPage(t *testing.T) { | |||
prepareTestEnv(t) | |||
landingPage := setting.LandingPageURL | |||
setting.LandingPageURL = setting.LandingPageHome | |||
req := NewRequest(t, "GET", "/") | |||
MakeRequest(t, req, http.StatusOK) | |||
setting.LandingPageURL = setting.LandingPageExplore | |||
req = NewRequest(t, "GET", "/") | |||
resp := MakeRequest(t, req, http.StatusFound) | |||
assert.Equal(t, "/explore", resp.Header().Get("Location")) | |||
setting.LandingPageURL = setting.LandingPageOrganizations | |||
req = NewRequest(t, "GET", "/") | |||
resp = MakeRequest(t, req, http.StatusFound) | |||
assert.Equal(t, "/explore/organizations", resp.Header().Get("Location")) | |||
setting.LandingPageURL = landingPage | |||
} |
@@ -37,12 +37,6 @@ func Toggle(options *ToggleOptions) macaron.Handler { | |||
return | |||
} | |||
// Check non-logged users landing page. | |||
if !ctx.IsSigned && ctx.Req.RequestURI == "/" && setting.LandingPageURL != setting.LandingPageHome { | |||
ctx.Redirect(setting.AppSubURL + string(setting.LandingPageURL)) | |||
return | |||
} | |||
// Redirect to dashboard if user tries to visit any non-login page. | |||
if options.SignOutRequired && ctx.IsSigned && ctx.Req.RequestURI != "/" { | |||
ctx.Redirect(setting.AppSubURL + "/") |
@@ -42,6 +42,10 @@ func Home(ctx *context.Context) { | |||
user.Dashboard(ctx) | |||
} | |||
return | |||
// Check non-logged users landing page. | |||
} else if setting.LandingPageURL != setting.LandingPageHome { | |||
ctx.Redirect(setting.AppSubURL + string(setting.LandingPageURL)) | |||
return | |||
} | |||
// Check auto-login. |