Former-commit-id: 8220f5660a75af69ee6358af3782416dae9aa185 [formerly 098749492c954879b5a01324076804e74947c780] [formerly 34f6dda3fafc72730b4e44d0c23ade6940bb90d4 [formerly 4b3ebca48c]]
Former-commit-id: 722e71cd19b9ecceb627cc1e65572839bd2a55c8 [formerly 23d5ac81b9ff1f39b51cc042eb2ac12d2e5da6fc]
Former-commit-id: c4e5ea0d6db7edcfdc3b551e0c43d1c77ef587c3
This commit is contained in:
Henrique Dias
2017-06-27 15:44:20 +01:00
parent 69a96e56b7
commit 1e99d3d7c1
9 changed files with 582 additions and 596 deletions

View File

@@ -87,50 +87,6 @@ Error:
return e, nil
}
// serveSingle serves a single file in an editor (if it is editable), shows the
// plain file, or downloads it if it can't be shown.
func serveSingle(c *requestContext, w http.ResponseWriter, r *http.Request) (int, error) {
var err error
if err = c.fi.RetrieveFileType(); err != nil {
return errorToHTTP(err, true), err
}
p := &page{
Name: c.fi.Name,
Path: c.fi.VirtualPath,
IsDir: false,
Data: c.fi,
User: c.us,
PrefixURL: c.fm.prefixURL,
BaseURL: c.fm.RootURL(),
WebDavURL: c.fm.WebDavURL(),
}
// If the request accepts JSON, we send the file information.
if strings.Contains(r.Header.Get("Accept"), "application/json") {
return p.PrintAsJSON(w)
}
if c.fi.Type == "text" {
if err = c.fi.Read(); err != nil {
return errorToHTTP(err, true), err
}
}
if c.fi.CanBeEdited() && c.us.AllowEdit {
p.Data, err = getEditor(r, c.fi)
p.Editor = true
if err != nil {
return http.StatusInternalServerError, err
}
return p.PrintAsHTML(w, c.fm.assets.templates, "frontmatter", "editor")
}
return p.PrintAsHTML(w, c.fm.assets.templates, "single")
}
func editorClass(mode string) string {
switch mode {
case "json", "toml", "yaml":