summaryrefslogtreecommitdiff
path: root/management/editor/editor.go
diff options
context:
space:
mode:
Diffstat (limited to 'management/editor/editor.go')
-rw-r--r--management/editor/editor.go54
1 files changed, 44 insertions, 10 deletions
diff --git a/management/editor/editor.go b/management/editor/editor.go
index 7194c27..511edb2 100644
--- a/management/editor/editor.go
+++ b/management/editor/editor.go
@@ -4,6 +4,7 @@ package editor
import (
"bytes"
+ "log"
"net/http"
)
@@ -38,16 +39,28 @@ func Form(post Editable, fields ...Field) ([]byte, error) {
editor := post.Editor()
editor.ViewBuf = &bytes.Buffer{}
- editor.ViewBuf.Write([]byte(`<table><tbody class="row"><tr class="col s8"><td>`))
+ _, err := editor.ViewBuf.WriteString(`<table><tbody class="row"><tr class="col s8"><td>`)
+ if err != nil {
+ log.Println("Error writing HTML string to editor Form buffer")
+ return nil, err
+ }
for _, f := range fields {
addFieldToEditorView(editor, f)
}
- editor.ViewBuf.Write([]byte(`</td></tr>`))
+ _, err = editor.ViewBuf.WriteString(`</td></tr>`)
+ if err != nil {
+ log.Println("Error writing HTML string to editor Form buffer")
+ return nil, err
+ }
// content items with Item embedded have some default fields we need to render
- editor.ViewBuf.Write([]byte(`<tr class="col s4 default-fields"><td>`))
+ _, err = editor.ViewBuf.WriteString(`<tr class="col s4 default-fields"><td>`)
+ if err != nil {
+ log.Println("Error writing HTML string to editor Form buffer")
+ return nil, err
+ }
publishTime := `
<div class="row content-only __ponzu">
@@ -98,9 +111,16 @@ func Form(post Editable, fields ...Field) ([]byte, error) {
</div>
`
- editor.ViewBuf.Write([]byte(publishTime))
+ _, err = editor.ViewBuf.WriteString(publishTime)
+ if err != nil {
+ log.Println("Error writing HTML string to editor Form buffer")
+ return nil, err
+ }
- addPostDefaultFieldsToEditorView(post, editor)
+ err = addPostDefaultFieldsToEditorView(post, editor)
+ if err != nil {
+ return nil, err
+ }
submit := `
<div class="input-field post-controls">
@@ -186,16 +206,26 @@ func Form(post Editable, fields ...Field) ([]byte, error) {
});
</script>
`
- editor.ViewBuf.Write([]byte(submit + script + `</td></tr></tbody></table>`))
+ _, err = editor.ViewBuf.WriteString(submit + script + `</td></tr></tbody></table>`)
+ if err != nil {
+ log.Println("Error writing HTML string to editor Form buffer")
+ return nil, err
+ }
return editor.ViewBuf.Bytes(), nil
}
-func addFieldToEditorView(e *Editor, f Field) {
- e.ViewBuf.Write(f.View)
+func addFieldToEditorView(e *Editor, f Field) error {
+ _, err := e.ViewBuf.Write(f.View)
+ if err != nil {
+ log.Println("Error writing field view to editor view buffer")
+ return err
+ }
+
+ return nil
}
-func addPostDefaultFieldsToEditorView(p Editable, e *Editor) {
+func addPostDefaultFieldsToEditorView(p Editable, e *Editor) error {
defaults := []Field{
Field{
View: Input("Slug", p, map[string]string{
@@ -220,7 +250,11 @@ func addPostDefaultFieldsToEditorView(p Editable, e *Editor) {
}
for _, f := range defaults {
- addFieldToEditorView(e, f)
+ err := addFieldToEditorView(e, f)
+ if err != nil {
+ return err
+ }
}
+ return nil
}