39 lines
1.3 KiB
Go
39 lines
1.3 KiB
Go
package renderer
|
|
|
|
import (
|
|
"net/http"
|
|
|
|
mobilityaccountsstorage "git.coopgo.io/coopgo-platform/mobility-accounts/storage"
|
|
)
|
|
|
|
const administrationMenu = "administration"
|
|
|
|
func (renderer *Renderer) Administration(w http.ResponseWriter, r *http.Request, groups any) {
|
|
files := renderer.ThemeConfig.GetStringSlice("views.administration.home.files")
|
|
state := NewState(r, renderer.ThemeConfig, administrationMenu)
|
|
state.ViewState = map[string]any{
|
|
"groups": groups,
|
|
}
|
|
|
|
renderer.Render("administration", w, r, files, state)
|
|
}
|
|
|
|
func (renderer *Renderer) AdministrationCreateGroup(w http.ResponseWriter, r *http.Request) {
|
|
files := renderer.ThemeConfig.GetStringSlice("views.administration.create_group.files")
|
|
state := NewState(r, renderer.ThemeConfig, administrationMenu)
|
|
|
|
renderer.Render("administration", w, r, files, state)
|
|
}
|
|
|
|
func (renderer *Renderer) AdministrationGroupDisplay(w http.ResponseWriter, r *http.Request, group any, groupmembers []mobilityaccountsstorage.Account, admins []mobilityaccountsstorage.Account) {
|
|
files := renderer.ThemeConfig.GetStringSlice("views.administration.display_group.files")
|
|
state := NewState(r, renderer.ThemeConfig, administrationMenu)
|
|
state.ViewState = map[string]any{
|
|
"group": group,
|
|
"members": groupmembers,
|
|
"admins": admins,
|
|
}
|
|
|
|
renderer.Render("administration", w, r, files, state)
|
|
}
|