github.com/kyleu/dbaudit@v0.0.2-0.20240321155047-ff2f2c940496/views/vdb/Table.html (about) 1 <!-- Content managed by Project Forge, see [projectforge.md] for details. --> 2 {% import ( 3 "github.com/kyleu/dbaudit/app" 4 "github.com/kyleu/dbaudit/app/controller/cutil" 5 "github.com/kyleu/dbaudit/app/db" 6 "github.com/kyleu/dbaudit/app/lib/filter" 7 "github.com/kyleu/dbaudit/views/components" 8 "github.com/kyleu/dbaudit/views/components/view" 9 ) %} 10 11 {% func Table(models db.Connections, params filter.ParamSet, as *app.State, ps *cutil.PageState) %} 12 {%- code prms := params.Get("db", nil, ps.Logger).Sanitize("db") -%} 13 <table> 14 <thead> 15 <tr> 16 {%= components.TableHeaderSimple("db", "id", "ID", "UUID in format (00000000-0000-0000-0000-000000000000)", prms, ps.URI, ps) %} 17 {%= components.TableHeaderSimple("db", "name", "Name", "String text", prms, ps.URI, ps) %} 18 {%= components.TableHeaderSimple("db", "icon", "Icon", "String text", prms, ps.URI, ps) %} 19 {%= components.TableHeaderSimple("db", "engine", "Engine", db.AllEngines.Help(), prms, ps.URI, ps) %} 20 {%= components.TableHeaderSimple("db", "server", "Server", "String text", prms, ps.URI, ps) %} 21 {%= components.TableHeaderSimple("db", "database", "Database", "String text", prms, ps.URI, ps) %} 22 </tr> 23 </thead> 24 <tbody> 25 {%- for _, model := range models -%} 26 <tr> 27 <td><a href="/db/{%= view.UUID(&model.ID) %}">{%= view.UUID(&model.ID) %}</a></td> 28 <td><strong>{%= view.String(model.Name) %}</strong></td> 29 <td>{%= view.String(model.Icon) %}</td> 30 <td>{%s model.Engine.String() %}</td> 31 <td>{%= view.String(model.Server) %}</td> 32 <td>{%= view.String(model.Database) %}</td> 33 </tr> 34 {%- endfor -%} 35 {%- if prms.HasNextPage(len(models) + prms.Offset) || prms.HasPreviousPage() -%} 36 <tr> 37 <td colspan="6">{%= components.Pagination(len(models) + prms.Offset, prms, ps.URI) %}</td> 38 </tr> 39 {%- endif -%} 40 </tbody> 41 </table> 42 {% endfunc %}