123456789101112131415161718192021222324252627282930313233343536373839404142434445 |
- // Copyright 2016 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 context
- import (
- "gopkg.in/macaron.v1"
- "github.com/gogits/gogs/modules/base"
- "github.com/gogits/gogs/modules/log"
- )
- type APIContext struct {
- *Context
- }
- // Error responses error message to client with given message.
- // If status is 500, also it prints error to log.
- func (ctx *APIContext) Error(status int, title string, obj interface{}) {
- var message string
- if err, ok := obj.(error); ok {
- message = err.Error()
- } else {
- message = obj.(string)
- }
- if status == 500 {
- log.Error(4, "%s: %s", title, message)
- }
- ctx.JSON(status, map[string]string{
- "message": message,
- "url": base.DOC_URL,
- })
- }
- func APIContexter() macaron.Handler {
- return func(c *Context) {
- ctx := &APIContext{
- Context: c,
- }
- c.Map(ctx)
- }
- }
|