summaryrefslogtreecommitdiff
path: root/internal
diff refs
from: back
to: back
| flip
diff options
context:
space:
mode:
Diffstat (limited to 'internal')
-rw-r--r--internal/b2/client.go12
-rw-r--r--internal/templatemanager/templatemanager.go57
2 files changed, 4 insertions, 65 deletions
diff --git a/internal/b2/client.go b/internal/b2/client.go
index 5322b84..f2b6cad 100644
--- a/internal/b2/client.go
+++ b/internal/b2/client.go
@@ -33,14 +33,13 @@ func NewB2Client(cfg *config.B2Config) (*B2Client, error) {
type BlogPage struct {
Link string
- FileName string
Metadata *frontmatter.Metadata
}
-func (c *B2Client) Scan(prefix string) ([]*BlogPage, error) {
+func (c *B2Client) Scan() ([]*BlogPage, error) {
filePaths := []*BlogPage{}
- iter := c.bucket.List(context.Background(), b2.ListPrefix(c.prefix+prefix))
+ iter := c.bucket.List(context.Background(), b2.ListPrefix(c.prefix))
for iter.Next() {
obj := iter.Object()
@@ -70,13 +69,10 @@ func (c *B2Client) Scan(prefix string) ([]*BlogPage, error) {
return nil, fmt.Errorf("failed to parse published time metadata field: %w", err)
}
- linkParts := strings.Split(obj.Name(), "/")
- nameParts := strings.Split(linkParts[len(linkParts)-1], ".")
- fileName := strings.Join(nameParts[:len(linkParts)-1], ".")
+ linkParts := strings.Split(obj.Name(), ".")
filePaths = append(filePaths, &BlogPage{
- Link: obj.Name(),
- FileName: fileName,
+ Link: strings.Join(linkParts[:len(linkParts)-1], "."),
Metadata: &frontmatter.Metadata{
Title: attrs.Info["title"],
ShortDescription: attrs.Info["short-description"],
diff --git a/internal/templatemanager/templatemanager.go b/internal/templatemanager/templatemanager.go
deleted file mode 100644
index 5effcb3..0000000
--- a/internal/templatemanager/templatemanager.go
+++ /dev/null
@@ -1,57 +0,0 @@
-package templatemanager
-
-import (
- "bytes"
- "fmt"
- "html/template"
- "path/filepath"
- "strings"
-)
-
-type TemplateManager struct {
- templates map[string]templateManagerRender
-}
-
-type templateManagerRender struct {
- Main string
- Tmpl *template.Template
-}
-
-type TemplateManagerTemplates struct {
- Name string
- Files []string
-}
-
-func NewTemplateManager(templates []TemplateManagerTemplates) (*TemplateManager, error) {
- templateMap := make(map[string]templateManagerRender)
-
- for _, tmplStruct := range templates {
- tmpl := template.New("").Funcs(template.FuncMap{
- "contains": strings.Contains,
- })
- tmpl, err := tmpl.ParseFiles(tmplStruct.Files...)
- if err != nil {
- return nil, err
- }
- templateMap[tmplStruct.Name] = templateManagerRender{
- Main: filepath.Base(tmplStruct.Files[0]),
- Tmpl: tmpl,
- }
-
- }
-
- return &TemplateManager{
- templates: templateMap,
- }, nil
-}
-
-func (tm *TemplateManager) Render(name string, data interface{}) ([]byte, error) {
- tmpl, exists := tm.templates[name]
- if !exists {
- return nil, fmt.Errorf("template %s is not found", name)
- }
-
- var buf bytes.Buffer
- err := tmpl.Tmpl.ExecuteTemplate(&buf, tmpl.Main, data)
- return buf.Bytes(), err
-}