| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107 |
- // Copyright 2014 The Gogs Authors. All rights reserved.
- // SPDX-License-Identifier: MIT
-
- package misc
-
- import (
- "net/http"
-
- "code.gitea.io/gitea/modules/markup"
- "code.gitea.io/gitea/modules/markup/markdown"
- api "code.gitea.io/gitea/modules/structs"
- "code.gitea.io/gitea/modules/util"
- "code.gitea.io/gitea/modules/web"
- "code.gitea.io/gitea/routers/common"
- "code.gitea.io/gitea/services/context"
- )
-
- // Markup render markup document to HTML
- func Markup(ctx *context.APIContext) {
- // swagger:operation POST /markup miscellaneous renderMarkup
- // ---
- // summary: Render a markup document as HTML
- // parameters:
- // - name: body
- // in: body
- // schema:
- // "$ref": "#/definitions/MarkupOption"
- // consumes:
- // - application/json
- // produces:
- // - text/html
- // responses:
- // "200":
- // "$ref": "#/responses/MarkupRender"
- // "422":
- // "$ref": "#/responses/validationError"
-
- form := web.GetForm(ctx).(*api.MarkupOption)
-
- if ctx.HasAPIError() {
- ctx.APIError(http.StatusUnprocessableEntity, ctx.GetErrMsg())
- return
- }
-
- mode := util.Iif(form.Wiki, "wiki", form.Mode) //nolint:staticcheck // form.Wiki is deprecated
- common.RenderMarkup(ctx.Base, ctx.Repo, mode, form.Text, form.Context, form.FilePath)
- }
-
- // Markdown render markdown document to HTML
- func Markdown(ctx *context.APIContext) {
- // swagger:operation POST /markdown miscellaneous renderMarkdown
- // ---
- // summary: Render a markdown document as HTML
- // parameters:
- // - name: body
- // in: body
- // schema:
- // "$ref": "#/definitions/MarkdownOption"
- // consumes:
- // - application/json
- // produces:
- // - text/html
- // responses:
- // "200":
- // "$ref": "#/responses/MarkdownRender"
- // "422":
- // "$ref": "#/responses/validationError"
-
- form := web.GetForm(ctx).(*api.MarkdownOption)
-
- if ctx.HasAPIError() {
- ctx.APIError(http.StatusUnprocessableEntity, ctx.GetErrMsg())
- return
- }
-
- mode := util.Iif(form.Wiki, "wiki", form.Mode) //nolint:staticcheck // form.Wiki is deprecated
- common.RenderMarkup(ctx.Base, ctx.Repo, mode, form.Text, form.Context, "")
- }
-
- // MarkdownRaw render raw markdown HTML
- func MarkdownRaw(ctx *context.APIContext) {
- // swagger:operation POST /markdown/raw miscellaneous renderMarkdownRaw
- // ---
- // summary: Render raw markdown as HTML
- // parameters:
- // - name: body
- // in: body
- // description: Request body to render
- // required: true
- // schema:
- // type: string
- // consumes:
- // - text/plain
- // produces:
- // - text/html
- // responses:
- // "200":
- // "$ref": "#/responses/MarkdownRender"
- // "422":
- // "$ref": "#/responses/validationError"
- defer ctx.Req.Body.Close()
- if err := markdown.RenderRaw(markup.NewRenderContext(ctx), ctx.Req.Body, ctx.Resp); err != nil {
- ctx.APIErrorInternal(err)
- return
- }
- }
|