From: slene Date: Sat, 15 Mar 2014 12:39:56 +0000 (+0800) Subject: Merge branch 'master' of github.com:gogits/gogs X-Git-Tag: v0.9.99~2442 X-Git-Url: https://source.dussan.org/?a=commitdiff_plain;h=a33d03f008df3af4db481d6c207588d99d48ea50;p=gitea.git Merge branch 'master' of github.com:gogits/gogs Conflicts: routers/user/user.go web.go --- a33d03f008df3af4db481d6c207588d99d48ea50 diff --cc modules/auth/user.go index 9c9ce686df,e5f22a0915..21336cdd98 --- a/modules/auth/user.go +++ b/modules/auth/user.go @@@ -61,9 -62,42 +61,9 @@@ func IsSignedIn(session sessions.Sessio return SignedInId(session) > 0 } -// SignInRequire checks user status from session. -// It will assign correspoding values to -// template data map if user has signed in. -func SignInRequire(redirect bool) martini.Handler { - return func(r render.Render, data base.TmplData, session sessions.Session) { - if !IsSignedIn(session) { - if redirect { - r.Redirect("/") - } - return - } - - user := SignedInUser(session) - if user == nil { - r.Redirect("/") - return - } - - data["IsSigned"] = true - data["SignedUser"] = user - data["SignedUserId"] = user.Id - data["SignedUserName"] = user.LowerName - } -} - -func SignOutRequire() martini.Handler { - return func(r render.Render, session sessions.Session) { - if IsSignedIn(session) { - r.Redirect("/") - } - } -} - type FeedsForm struct { UserId int64 `form:"userid" binding:"Required"` - Offset int64 `form:"offset"` + Page int64 `form:"p"` } type UpdateProfileForm struct { diff --cc web.go index ad19a5da01,24f01d68a8..07f2aa251d --- a/web.go +++ b/web.go @@@ -46,34 -61,32 +46,34 @@@ func runWeb(*cli.Context) store := sessions.NewCookieStore([]byte("secret123")) m.Use(sessions.Sessions("my_session", store)) + m.Use(middleware.InitContext()) + // Routers. - m.Get("/", middleware.SignInRequire(false), routers.Home) - m.Get("/", auth.SignInRequire(true), routers.Home) - m.Any("/user/login", auth.SignOutRequire(), binding.BindIgnErr(auth.LogInForm{}), user.SignIn) - m.Any("/user/logout", auth.SignInRequire(true), user.SignOut) - m.Any("/user/sign_up", auth.SignOutRequire(), binding.BindIgnErr(auth.RegisterForm{}), user.SignUp) - m.Any("/user/delete", auth.SignInRequire(true), user.Delete) ++ m.Get("/", middleware.SignInRequire(true), routers.Home) + m.Any("/user/login", middleware.SignOutRequire(), binding.BindIgnErr(auth.LogInForm{}), user.SignIn) + m.Any("/user/logout", middleware.SignInRequire(true), user.SignOut) + m.Any("/user/sign_up", middleware.SignOutRequire(), binding.BindIgnErr(auth.RegisterForm{}), user.SignUp) + m.Any("/user/delete", middleware.SignInRequire(true), user.Delete) m.Get("/user/feeds", binding.Bind(auth.FeedsForm{}), user.Feeds) - m.Any("/user/setting", auth.SignInRequire(true), binding.BindIgnErr(auth.UpdateProfileForm{}), user.Setting) - m.Any("/user/setting/password", auth.SignInRequire(true), binding.BindIgnErr(auth.UpdatePasswdForm{}), user.SettingPassword) - m.Any("/user/setting/ssh", auth.SignInRequire(true), binding.BindIgnErr(auth.AddSSHKeyForm{}), user.SettingSSHKeys) - m.Any("/user/setting/notification", auth.SignInRequire(true), user.SettingNotification) - m.Any("/user/setting/security", auth.SignInRequire(true), user.SettingSecurity) + m.Any("/user/setting", middleware.SignInRequire(true), binding.BindIgnErr(auth.UpdateProfileForm{}), user.Setting) + m.Any("/user/setting/password", middleware.SignInRequire(true), binding.BindIgnErr(auth.UpdatePasswdForm{}), user.SettingPassword) + m.Any("/user/setting/ssh", middleware.SignInRequire(true), binding.BindIgnErr(auth.AddSSHKeyForm{}), user.SettingSSHKeys) + m.Any("/user/setting/notification", middleware.SignInRequire(true), user.SettingNotification) + m.Any("/user/setting/security", middleware.SignInRequire(true), user.SettingSecurity) - m.Get("/user/:username", auth.SignInRequire(false), user.Profile) + m.Get("/user/:username", middleware.SignInRequire(false), user.Profile) - m.Any("/repo/create", auth.SignInRequire(true), binding.BindIgnErr(auth.CreateRepoForm{}), repo.Create) - m.Any("/repo/delete", auth.SignInRequire(true), binding.Bind(auth.DeleteRepoForm{}), repo.Delete) - m.Any("/repo/list", auth.SignInRequire(false), repo.List) + m.Any("/repo/create", middleware.SignInRequire(true), binding.BindIgnErr(auth.CreateRepoForm{}), repo.Create) + m.Any("/repo/delete", middleware.SignInRequire(true), binding.Bind(auth.DeleteRepoForm{}), repo.Delete) + m.Any("/repo/list", middleware.SignInRequire(false), repo.List) - m.Get("/:username/:reponame/settings", auth.SignInRequire(false), auth.RepoAssignment(true), repo.Setting) + m.Get("/:username/:reponame/settings", middleware.SignInRequire(false), auth.RepoAssignment(true), repo.Setting) m.Get("/:username/:reponame/tree/:branchname/**", - auth.SignInRequire(false), auth.RepoAssignment(true), repo.Single) + middleware.SignInRequire(false), auth.RepoAssignment(true), repo.Single) m.Get("/:username/:reponame/tree/:branchname", - auth.SignInRequire(false), auth.RepoAssignment(true), repo.Single) - m.Get("/:username/:reponame", auth.SignInRequire(false), auth.RepoAssignment(true), repo.Single) + middleware.SignInRequire(false), auth.RepoAssignment(true), repo.Single) + m.Get("/:username/:reponame", middleware.SignInRequire(false), auth.RepoAssignment(true), repo.Single) //m.Get("/:username/:reponame", repo.Repo)