-
Ciasta
-
Torty
-
Slodkie stoły
-
Lody
+ @portfolioHeader("portfolio")
+
+
+ for _, img := range images {
+ @AvifImage("portfolio/"+img, "portfolio")
+ }
diff --git a/html/portfolio_templ.go b/html/portfolio_templ.go
index b043a92..aeaaecb 100644
--- a/html/portfolio_templ.go
+++ b/html/portfolio_templ.go
@@ -8,7 +8,7 @@ package html
import "github.com/a-h/templ"
import templruntime "github.com/a-h/templ/runtime"
-func Portfolio() templ.Component {
+func Portfolio(images []string) templ.Component {
return templruntime.GeneratedTemplate(func(templ_7745c5c3_Input templruntime.GeneratedComponentInput) (templ_7745c5c3_Err error) {
templ_7745c5c3_W, ctx := templ_7745c5c3_Input.Writer, templ_7745c5c3_Input.Context
if templ_7745c5c3_CtxErr := ctx.Err(); templ_7745c5c3_CtxErr != nil {
@@ -41,7 +41,25 @@ func Portfolio() templ.Component {
}()
}
ctx = templ.InitializeContext(ctx)
- templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 1, "
")
+ templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 1, "
")
+ if templ_7745c5c3_Err != nil {
+ return templ_7745c5c3_Err
+ }
+ templ_7745c5c3_Err = portfolioHeader("portfolio").Render(ctx, templ_7745c5c3_Buffer)
+ if templ_7745c5c3_Err != nil {
+ return templ_7745c5c3_Err
+ }
+ templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 2, "")
+ if templ_7745c5c3_Err != nil {
+ return templ_7745c5c3_Err
+ }
+ for _, img := range images {
+ templ_7745c5c3_Err = AvifImage("portfolio/"+img, "portfolio").Render(ctx, templ_7745c5c3_Buffer)
+ if templ_7745c5c3_Err != nil {
+ return templ_7745c5c3_Err
+ }
+ }
+ templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 3, "
")
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
diff --git a/main.go b/main.go
index 5150a24..9b0b069 100644
--- a/main.go
+++ b/main.go
@@ -7,9 +7,11 @@ import (
"log"
"net/http"
"os"
+ "path/filepath"
"piekarnikgosi/data"
"piekarnikgosi/html"
"piekarnikgosi/utils"
+ "sort"
)
type ComponentRenderer interface {
@@ -29,11 +31,26 @@ func saveFile(name string, comp ComponentRenderer) {
}
}
+func portfolioImages() []string {
+ entries, err := os.ReadDir("img/portfolio")
+ if err != nil {
+ log.Fatal(err)
+ }
+ var names []string
+ for _, e := range entries {
+ if filepath.Ext(e.Name()) == ".avif" {
+ names = append(names, e.Name())
+ }
+ }
+ sort.Strings(names)
+ return names
+}
+
func generateHTML() {
log.Println("generating html")
saveFile(`index`, html.Index())
saveFile(`kawiarnia`, html.Kawiarnia())
- saveFile(`portfolio`, html.Portfolio())
+ saveFile(`portfolio`, html.Portfolio(portfolioImages()))
saveFile(`wyroby`, html.Wyroby(data.Cakes, "wyroby"))
saveFile(`wyroby_deserki`, html.Wyroby(data.Desserts, "wyroby_deserki"))
saveFile(`wyroby_torty`, html.WyrobyTorty())