Static site generator for making web mixtapes in 2020.
選択できるのは25トピックまでです。 トピックは、先頭が英数字で、英数字とダッシュ('-')を使用した35文字以内のものにしてください。

30 行
669 B

  1. package cdr
  2. import (
  3. _ "embed"
  4. "html/template"
  5. "io"
  6. "io/ioutil"
  7. "log"
  8. )
  9. func Render(m *Mixtape, w io.Writer) error {
  10. mixtapeRawTmpl, err := ioutil.ReadFile("mixtape.tmpl")
  11. if err != nil {
  12. log.Print("Unable to load custom mixtape.tmpl; falling back to default")
  13. mixtapeRawTmpl = defaultMixtapeTmpl
  14. } else {
  15. log.Print("Generating from local mixtape.tmpl")
  16. }
  17. t, err := template.New("mixtape").Parse(string(mixtapeRawTmpl) + string(partsRawTmpl))
  18. if err != nil {
  19. log.Printf("[ERROR] Unable to parse: %v", err)
  20. return err
  21. }
  22. err = t.ExecuteTemplate(w, "mixtape", m)
  23. if err != nil {
  24. log.Printf("[ERROR] Unable to render: %v", err)
  25. }
  26. return nil
  27. }