sync: Handle overview.md and statement.md
This commit is contained in:
parent
630c065825
commit
70bad90756
1 changed files with 22 additions and 9 deletions
|
@ -119,30 +119,43 @@ func BuildExercice(i Importer, theme *fic.Theme, epath string, dmap *map[int64]*
|
||||||
e.Title = fixnbsp(e.Title)
|
e.Title = fixnbsp(e.Title)
|
||||||
|
|
||||||
// Texts to format using Markdown
|
// Texts to format using Markdown
|
||||||
|
if i.exists(path.Join(epath, "overview.txt")) {
|
||||||
e.Overview, err = getFileContent(i, path.Join(epath, "overview.txt"))
|
e.Overview, err = getFileContent(i, path.Join(epath, "overview.txt"))
|
||||||
|
} else if i.exists(path.Join(epath, "overview.md")) {
|
||||||
|
e.Overview, err = getFileContent(i, path.Join(epath, "overview.md"))
|
||||||
|
} else {
|
||||||
|
err = fmt.Errorf("Unable to find overview.txt nor overview.md")
|
||||||
|
}
|
||||||
if err != nil {
|
if err != nil {
|
||||||
errs = append(errs, fmt.Sprintf("%q: overview.txt: %s", edir, err))
|
errs = append(errs, fmt.Sprintf("%q: overview.txt: %s", edir, err))
|
||||||
} else {
|
} else {
|
||||||
e.Overview = fixnbsp(e.Overview)
|
e.Overview = fixnbsp(e.Overview)
|
||||||
if e.Overview, err = ProcessMarkdown(i, e.Overview, epath); err != nil {
|
|
||||||
errs = append(errs, fmt.Sprintf("%q: overview.txt: an error occurs during markdown formating: %s", edir, err))
|
|
||||||
}
|
|
||||||
|
|
||||||
var buf bytes.Buffer
|
var buf bytes.Buffer
|
||||||
err := goldmark.Convert([]byte(strings.Split(e.Overview, "\n")[0]), &buf)
|
err := goldmark.Convert([]byte(strings.Split(e.Overview, "\n")[0]), &buf)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
errs = append(errs, fmt.Sprintf("%q: overview.txt: an error occurs during markdown formating of the headline: %s", edir, err))
|
errs = append(errs, fmt.Sprintf("%q: overview.md: an error occurs during markdown formating of the headline: %s", edir, err))
|
||||||
} else {
|
} else {
|
||||||
e.Headline = string(buf.Bytes())
|
e.Headline = string(buf.Bytes())
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if e.Overview, err = ProcessMarkdown(i, e.Overview, epath); err != nil {
|
||||||
|
errs = append(errs, fmt.Sprintf("%q: overview.md: an error occurs during markdown formating: %s", edir, err))
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if i.exists(path.Join(epath, "statement.txt")) {
|
||||||
e.Statement, err = getFileContent(i, path.Join(epath, "statement.txt"))
|
e.Statement, err = getFileContent(i, path.Join(epath, "statement.txt"))
|
||||||
|
} else if i.exists(path.Join(epath, "statement.md")) {
|
||||||
|
e.Statement, err = getFileContent(i, path.Join(epath, "statement.md"))
|
||||||
|
} else {
|
||||||
|
err = fmt.Errorf("Unable to find statement.txt nor statement.md")
|
||||||
|
}
|
||||||
if err != nil {
|
if err != nil {
|
||||||
errs = append(errs, fmt.Sprintf("%q: statement.txt: %s", edir, err))
|
errs = append(errs, fmt.Sprintf("%q: statement.md: %s", edir, err))
|
||||||
} else {
|
} else {
|
||||||
if e.Statement, err = ProcessMarkdown(i, fixnbsp(e.Statement), epath); err != nil {
|
if e.Statement, err = ProcessMarkdown(i, fixnbsp(e.Statement), epath); err != nil {
|
||||||
errs = append(errs, fmt.Sprintf("%q: statement.txt: an error occurs during markdown formating: %s", edir, err))
|
errs = append(errs, fmt.Sprintf("%q: statement.md: an error occurs during markdown formating: %s", edir, err))
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -237,7 +250,7 @@ func BuildExercice(i Importer, theme *fic.Theme, epath string, dmap *map[int64]*
|
||||||
errs = append(errs, fmt.Sprintf("%q: resolution.md: The file is empty!", edir))
|
errs = append(errs, fmt.Sprintf("%q: resolution.md: The file is empty!", edir))
|
||||||
} else if e.Resolution, err = getFileContent(i, writeup); err != nil {
|
} else if e.Resolution, err = getFileContent(i, writeup); err != nil {
|
||||||
errs = append(errs, fmt.Sprintf("%q: resolution.md: %s", edir, err.Error()))
|
errs = append(errs, fmt.Sprintf("%q: resolution.md: %s", edir, err.Error()))
|
||||||
} else if e.Resolution, err = ProcessMarkdown(i, e.Overview, epath); err != nil {
|
} else if e.Resolution, err = ProcessMarkdown(i, e.Resolution, epath); err != nil {
|
||||||
errs = append(errs, fmt.Sprintf("%q: resolution.md: error during markdown processing: %s", edir, err.Error()))
|
errs = append(errs, fmt.Sprintf("%q: resolution.md: error during markdown processing: %s", edir, err.Error()))
|
||||||
} else {
|
} else {
|
||||||
resolutionFound = true
|
resolutionFound = true
|
||||||
|
|
Reference in a new issue