From 10f014d5da7f1a35d2fc6cf0aa617a5ec4bb074f Mon Sep 17 00:00:00 2001 From: jan Date: Tue, 29 Dec 2015 23:13:09 +0100 Subject: =?UTF-8?q?UI=20f=C3=BCr=20die=20simple=20pagination.=20'add'=20un?= =?UTF-8?q?d=20'sub'=20template-funktionen=20hinzugef=C3=BCgt.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit diff --git a/frontend/renderer.go b/frontend/renderer.go index a3aa83d..524c2c8 100644 --- a/frontend/renderer.go +++ b/frontend/renderer.go @@ -47,9 +47,16 @@ func New(path string) *Renderer { "html": func(in string) template.HTML { return template.HTML(in) }, + "add": func(a, b int) int { + return a + b + }, + "sub": func(a, b int) int { + return a - b + }, } + r := &Renderer{ - template.Must(template.ParseGlob(path + "/*")).Funcs(funcMap), + template.Must(template.New("").Funcs(funcMap).ParseGlob(path + "/*")), make(map[string]interface{}), } diff --git a/modules/tags/tags.go b/modules/tags/tags.go index aca1b44..527d1d9 100644 --- a/modules/tags/tags.go +++ b/modules/tags/tags.go @@ -69,6 +69,20 @@ func (m *Module) viewTagPage(w http.ResponseWriter, r *http.Request, p httproute pageNumber = 1 } + // Anzahl an Pages holen + var pageNum int + err = m.g.DB.QueryRow(`SELECT COUNT(*) FROM grilist.grils_tags WHERE tag_id = $1`, tagID).Scan(&pageNum) + if err != nil { + log.Println("error getting page count", err) + http.Redirect(w, r, "/", 302) + return + } + pageCount := (int)((float64)(pageNum)/12.0 + 0.5) + + if pageNumber > pageCount { + pageNumber = pageCount + } + idList := make([]int, 0) rows, err := m.g.DB.Query( "SELECT gril_id FROM grilist.grils_tags WHERE tag_id = $1 LIMIT 12 OFFSET $2", @@ -108,5 +122,7 @@ func (m *Module) viewTagPage(w http.ResponseWriter, r *http.Request, p httproute data["user"] = user data["tag"] = tag data["cards"] = cards + data["currentPage"] = pageNumber + data["pageCount"] = pageCount m.g.Renderer.RenderPage("tag", w, data) } diff --git a/views/tag.html b/views/tag.html index 788083f..3e89a7b 100644 --- a/views/tag.html +++ b/views/tag.html @@ -3,6 +3,7 @@ {{ template "materialize" }} grilist + @@ -15,6 +16,11 @@ {{ template "card" . }} {{ end }} + -- cgit v0.10.1