ajouter le module groupe
This commit is contained in:
79
renderer/group_module.go
Normal file
79
renderer/group_module.go
Normal file
@@ -0,0 +1,79 @@
|
||||
package renderer
|
||||
|
||||
import (
|
||||
"encoding/json"
|
||||
"fmt"
|
||||
"html/template"
|
||||
"net/http"
|
||||
)
|
||||
|
||||
const groupMenu = "group_module"
|
||||
|
||||
type BeneficiariesList struct {
|
||||
Group string `json:"group"`
|
||||
Count int `json:"count"`
|
||||
CacheId string `json:"cache_id"`
|
||||
Beneficiaries []any `json:"beneficiaries"`
|
||||
}
|
||||
|
||||
func (s BeneficiariesList) JSON() template.JS {
|
||||
result, _ := json.Marshal(s)
|
||||
return template.JS(result)
|
||||
}
|
||||
|
||||
func (s BeneficiariesList) JSONWithLimits(a int, b int) template.JS {
|
||||
if b < len(s.Beneficiaries) {
|
||||
s.Beneficiaries = s.Beneficiaries[a:b]
|
||||
}
|
||||
return s.JSON()
|
||||
}
|
||||
|
||||
func (renderer *Renderer) Groups(w http.ResponseWriter, r *http.Request, groups any) {
|
||||
files := renderer.ThemeConfig.GetStringSlice("views.group_module.home.files")
|
||||
state := NewState(r, renderer.ThemeConfig, groupMenu)
|
||||
state.ViewState = map[string]any{
|
||||
"groups": groups,
|
||||
}
|
||||
|
||||
renderer.Render("group_module", w, r, files, state)
|
||||
}
|
||||
|
||||
func (renderer *Renderer) CreateGroupModule(w http.ResponseWriter, r *http.Request) {
|
||||
files := renderer.ThemeConfig.GetStringSlice("views.group_module.create_group.files")
|
||||
state := NewState(r, renderer.ThemeConfig, groupMenu)
|
||||
|
||||
renderer.Render("group_module", w, r, files, state)
|
||||
}
|
||||
|
||||
func (renderer *Renderer) DisplayGroupModule(w http.ResponseWriter, r *http.Request, groupid string, accounts []any, cacheid string, searched bool, beneficiary any, group any, beneficiaries []any) {
|
||||
files := renderer.ThemeConfig.GetStringSlice("views.group_module.display_group.files")
|
||||
state := NewState(r, renderer.ThemeConfig, groupMenu)
|
||||
|
||||
viewstate := map[string]any{
|
||||
"beneficiaries": beneficiaries,
|
||||
"searched": searched,
|
||||
"group": group,
|
||||
"list": BeneficiariesList{
|
||||
Group: groupid,
|
||||
Count: len(accounts),
|
||||
CacheId: cacheid,
|
||||
Beneficiaries: accounts,
|
||||
},
|
||||
}
|
||||
|
||||
if searched {
|
||||
viewstate["search"] = map[string]any{
|
||||
"beneficiary": beneficiary,
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
fmt.Println(beneficiary)
|
||||
|
||||
state.ViewState = viewstate
|
||||
fmt.Println("èèèèèèèèèèèèèèèèèèèèèèèèèè")
|
||||
fmt.Println(state.ViewState)
|
||||
fmt.Println(group)
|
||||
|
||||
renderer.Render("beneficiaries_list", w, r, files, state)
|
||||
}
|
||||
Reference in New Issue
Block a user