module_users.go 2.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384
  1. package modules
  2. import (
  3. "html"
  4. others "golang-fave/engine/wrapper/resources/others"
  5. utils "golang-fave/engine/wrapper/utils"
  6. )
  7. func (this *Module) Module_users() {
  8. // Do something here...
  9. }
  10. func (this *Module) Module_users_display() bool {
  11. return false
  12. }
  13. func (this *Module) Module_users_alias() string {
  14. return "users"
  15. }
  16. func (this *Module) Module_users_name() string {
  17. return "Users"
  18. }
  19. func (this *Module) Module_users_icon() string {
  20. return others.File_assets_sys_svg_user
  21. }
  22. func (this *Module) Module_users_order() int {
  23. return 100
  24. }
  25. func (this *Module) Module_users_submenu() []utils.ModuleSubMenu {
  26. result := make([]utils.ModuleSubMenu, 0)
  27. result = append(result, utils.ModuleSubMenu{
  28. Alias: "default",
  29. Name: "List of users",
  30. Icon: others.File_assets_sys_svg_list,
  31. })
  32. result = append(result, utils.ModuleSubMenu{
  33. Alias: "modify",
  34. Name: "Add new user",
  35. Icon: others.File_assets_sys_svg_plus,
  36. })
  37. return result
  38. }
  39. func (this *Module) Module_users_content() string {
  40. if this.smod == "default" {
  41. breadcrumb := this.breadcrumb([]dataBreadcrumb{
  42. {"List of users", ""},
  43. })
  44. data_table := this.data_table("users", "email", "ASC", []dataTableRow{
  45. {"id", "", nil},
  46. {"email", "Email", func(values *[]string) string {
  47. email := `<a href="/cp/users/modify/` + (*values)[0] + `/">` + html.EscapeString((*values)[1]) + `</a>`
  48. name := html.EscapeString((*values)[2])
  49. if name != "" && (*values)[3] != "" {
  50. name += ` ` + (*values)[3]
  51. }
  52. if name != "" {
  53. name = `<div><small>` + name + `</small></div>`
  54. }
  55. return `<div>` + email + `</div>` + name
  56. }},
  57. {"first_name", "", nil},
  58. {"last_name", "", nil},
  59. }, func(values *[]string) string {
  60. return `<a href="/cp/users/modify/` + (*values)[0] + `/">` +
  61. others.File_assets_sys_svg_edit + `</a>` +
  62. `<a href="#">` + others.File_assets_sys_svg_remove + `</a>`
  63. }, "/cp/users/default/")
  64. return breadcrumb + data_table
  65. } else if this.smod == "modify" {
  66. // Add/Edit
  67. return "Edit!"
  68. }
  69. return ""
  70. }
  71. func (this *Module) Module_users_sidebar() string {
  72. return ""
  73. }