diff options
author | Unknown <joe2010xtmf@163.com> | 2014-03-14 01:51:12 -0400 |
---|---|---|
committer | Unknown <joe2010xtmf@163.com> | 2014-03-14 01:51:12 -0400 |
commit | 15f8bc417e2b5683e2cd578c9c50f51acfd3daba (patch) | |
tree | 0e76575eda02bbbfc095d6620e49659cff56a2bd | |
parent | 56cf05be771977abd9ae2e68dd446092c595981c (diff) |
Add log.handle
-rw-r--r-- | modules/log/error.go | 32 | ||||
-rw-r--r-- | modules/log/log.go | 10 | ||||
-rw-r--r-- | routers/repo/repo.go | 4 | ||||
-rw-r--r-- | web.go | 1 |
4 files changed, 12 insertions, 35 deletions
diff --git a/modules/log/error.go b/modules/log/error.go deleted file mode 100644 index cb94ec24..00000000 --- a/modules/log/error.go +++ /dev/null @@ -1,32 +0,0 @@ -// Copyright 2014 The Gogs Authors. All rights reserved. -// Use of this source code is governed by a MIT-style -// license that can be found in the LICENSE file. - -package log - -import ( - "github.com/codegangsta/martini" - "github.com/martini-contrib/render" -) - -// ErrHandler is an interface for custom error handler. -type ErrHandler interface { - Handle(string, render.Render, error) -} - -// ErrHandle is a Middleware that maps a ErrHandler service into the Martini handler chain. -func ErrHandle() martini.Handler { - return func(context martini.Context) { - context.MapTo(&errHandler{}, (*ErrHandler)(nil)) - } -} - -type errHandler struct { -} - -func (eh *errHandler) Handle(title string, r render.Render, err error) { - Error("%s: %v", title, err) - r.HTML(200, "base/error", map[string]interface{}{ - "ErrorMsg": err, - }) -} diff --git a/modules/log/log.go b/modules/log/log.go index 0634bde6..f71be7c1 100644 --- a/modules/log/log.go +++ b/modules/log/log.go @@ -6,7 +6,11 @@ package log import ( + "github.com/martini-contrib/render" + "github.com/gogits/logs" + + "github.com/gogits/gogs/modules/base" ) var logger *logs.BeeLogger @@ -35,3 +39,9 @@ func Warn(format string, v ...interface{}) { func Critical(format string, v ...interface{}) { logger.Critical(format, v...) } + +func Handle(status int, title, tmpl string, data base.TmplData, r render.Render, err error) { + data["ErrorMsg"] = err + Error("%s: %v", title, err) + r.HTML(status, tmpl, data) +} diff --git a/routers/repo/repo.go b/routers/repo/repo.go index 1c9bb050..706b4f93 100644 --- a/routers/repo/repo.go +++ b/routers/repo/repo.go @@ -16,7 +16,7 @@ import ( "github.com/gogits/gogs/modules/log" ) -func Create(form auth.CreateRepoForm, req *http.Request, r render.Render, data base.TmplData, session sessions.Session, eh log.ErrHandler) { +func Create(form auth.CreateRepoForm, req *http.Request, r render.Render, data base.TmplData, session sessions.Session) { data["Title"] = "Create repository" if req.Method == "GET" { @@ -64,7 +64,7 @@ func Create(form auth.CreateRepoForm, req *http.Request, r render.Render, data b return } - eh.Handle("repo.Create", r, err) + log.Handle(200, "repo.Create", "base/error", data, r, err) } func Delete(form auth.DeleteRepoForm, req *http.Request, r render.Render, data base.TmplData, session sessions.Session) { @@ -50,7 +50,6 @@ func runWeb(*cli.Context) { // Middlewares. m.Use(render.Renderer(render.Options{Funcs: []template.FuncMap{AppHelpers}})) m.Use(base.InitContext()) - m.Use(log.ErrHandle()) // TODO: should use other store because cookie store is not secure. store := sessions.NewCookieStore([]byte("secret123")) |