aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--cmd/server/auth.go3
-rw-r--r--page/checkup.go5
-rw-r--r--page/index.go5
-rw-r--r--page/page.go34
4 files changed, 22 insertions, 25 deletions
diff --git a/cmd/server/auth.go b/cmd/server/auth.go
index caade97..5e2316e 100644
--- a/cmd/server/auth.go
+++ b/cmd/server/auth.go
@@ -59,7 +59,8 @@ func (a *App) ReadAuth(fn string) error { //nolint
fh, err := os.Open(fn)
if err != nil {
- if strings.Contains(err.Error(), "no such file") {
+ if strings.Contains(err.Error(), "no such file") ||
+ strings.Contains(err.Error(), "system cannot find the file specified") {
goto write
}
diff --git a/page/checkup.go b/page/checkup.go
index 6c3664f..b3b71fc 100644
--- a/page/checkup.go
+++ b/page/checkup.go
@@ -3,6 +3,7 @@ package page
import (
"fmt"
"io/fs"
+ "path/filepath"
"reflect"
"strings"
)
@@ -14,8 +15,8 @@ func (p *Page) Checkup() (map[string]PageList, error) {
out := make(map[string]PageList)
- _ = fs.WalkDir(FileSystem, ".",
- func(path string, info fs.DirEntry, err error) error {
+ _ = filepath.Walk(".",
+ func(path string, info fs.FileInfo, err error) error {
if err != nil {
return err
}
diff --git a/page/index.go b/page/index.go
index 00cab4b..75cbe87 100644
--- a/page/index.go
+++ b/page/index.go
@@ -2,6 +2,7 @@ package page
import (
"io/fs"
+ "path/filepath"
"strings"
"sync"
"time"
@@ -40,8 +41,8 @@ func (p *Page) Index() (map[string]PageList, error) {
out := make(map[string]PageList)
- _ = fs.WalkDir(FileSystem, ".",
- func(path string, info fs.DirEntry, err error) error {
+ _ = filepath.Walk(".",
+ func(path string, info fs.FileInfo, err error) error {
if err != nil {
return err
}
diff --git a/page/page.go b/page/page.go
index adb2362..d34a1f7 100644
--- a/page/page.go
+++ b/page/page.go
@@ -10,18 +10,18 @@
//
// Usage:
//
-// import (
-// "fmt"
-// "os"
-// site "riedstra.dev/mitch/go-website/page"
-// )
-// // Where some/path.md exists
-// p := site.NewPage("/some/path")
-// // Dump the rendered HTML to stdout
-// err := p.Render(os.Stdout)
-// if err != nil {
-// fmt.Fprintln(os.Stderr, err)
-// }
+// import (
+// "fmt"
+// "os"
+// site "riedstra.dev/mitch/go-website/page"
+// )
+// // Where some/path.md exists
+// p := site.NewPage("/some/path")
+// // Dump the rendered HTML to stdout
+// err := p.Render(os.Stdout)
+// if err != nil {
+// fmt.Fprintln(os.Stderr, err)
+// }
package page
import (
@@ -30,7 +30,6 @@ import (
"errors"
"fmt"
"io"
- "io/fs"
"log"
"os"
"path/filepath"
@@ -71,11 +70,6 @@ var Funcs template.FuncMap
// or rebuilt on each call.
var CacheIndex = true
-// FileSystem can be replaced with anything that implements the fs.FS interface
-// and the website should be able to continue working with a different
-// backend.
-var FileSystem = os.DirFS(".")
-
// TemplateDirectory is the parent directory which templates are stored,
// usually the BaseTemplate is stored here as well, though it does not
// have to be. Currently this is used for the 4xx and 5xx pages. ( 4xx.md
@@ -165,7 +159,7 @@ func (p *Page) Render(wr io.Writer) error {
return err
}
- templateContent, err := fs.ReadFile(FileSystem, BaseTemplate)
+ templateContent, err := os.ReadFile(BaseTemplate)
if err != nil {
return fmt.Errorf("reading base template: %w", err)
}
@@ -185,7 +179,7 @@ func (p *Page) Read() error {
yamlBuf := bytes.NewBuffer(nil)
markdownBuf := bytes.NewBuffer(nil)
- fh, err := FileSystem.Open(p.path + Suffix)
+ fh, err := os.Open(p.path + Suffix)
if err != nil {
return fmt.Errorf("opening markdown: %w", err)
}