diff --git a/main.go b/main.go index 2a075f4..67ec073 100644 --- a/main.go +++ b/main.go @@ -136,7 +136,7 @@ func process(_ context.Context, w gemini.ResponseWriter, r *gemini.Request) { log.Fatal(err) return } - db.Inc("page_counter_" + defaultLang) + db.Inc("page_counter." + defaultLang) conn, err := grpc.Dial( fileSrvHost+":"+fileSrvPort, @@ -240,10 +240,10 @@ func renderIndex(w gemini.ResponseWriter, client TreeManagerClient) { if !found { } - pageCounter, found := db.Get("page_counter_" + defaultLang) + pageCounter, found := db.Get("page_counter." + defaultLang) if !found { pageCounter = "1" - db.Save("page_counter_"+defaultLang, "1") + db.Save("page_counter."+defaultLang, "1") } w.SetMediaType("text/gemini") @@ -437,9 +437,24 @@ func renderFile(w gemini.ResponseWriter, r *gemini.Request, client TreeManagerCl return } + db, err := zordfsdb.InitDB("./db") + if err != nil { + w.WriteHeader(gemini.StatusTemporaryFailure, "Internal server error") + log.Fatal(err) + return + } + + pageCounter, found := db.Get("page_counter." + id) + if !found { + pageCounter = "1" + db.Save("page_counter."+id, "1") + } + w.SetMediaType("text/gemini") tpl := pongo2.Must(pongo2.FromFile("templates/page.gmi")) - page, err := tpl.Execute(pongo2.Context{"lang": defaultLang, "file": file}) + page, err := tpl.Execute( + pongo2.Context{"lang": defaultLang, "file": file, "pageCounter": pageCounter}, + ) if err != nil { log.Fatalf("template failed: %v", err) return diff --git a/templates/en/index.gmi b/templates/en/index.gmi index 2407c57..2add4ed 100644 --- a/templates/en/index.gmi +++ b/templates/en/index.gmi @@ -22,5 +22,5 @@ Welcome to my capsule in Gemini space. {{ logo() }} ``` Last build: {{lastRebuild}} -Page counter: {{pageCounter}} +Total page counter: {{pageCounter}} ``` diff --git a/templates/page.gmi b/templates/page.gmi index a613795..d774be5 100644 --- a/templates/page.gmi +++ b/templates/page.gmi @@ -15,3 +15,7 @@ Language: {{ file.File.Lang }} {{ category_url(file.File.CategoryPath, file.File.Category|last, 0) }} {{ home(lang) }} + +``` +Page counter: {{pageCounter}} +``` diff --git a/templates/sgs/index.gmi b/templates/sgs/index.gmi index e501ce8..7e38552 100644 --- a/templates/sgs/index.gmi +++ b/templates/sgs/index.gmi @@ -23,6 +23,6 @@ Sveikė atvīkėn i mona kapsolė Gemini ertie. {{ logo() }} => /s ėiškuok ``` -Paskutinis atnaujėnėms: {{lastRebuild}} -Lonkītuoju skaitlios: {{pageCounter}} +Last build: {{lastRebuild}} +Total page counter: {{pageCounter}} ```