module_users.go 2.3 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091
  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 class="ico" href="/cp/users/modify/` + (*values)[0] + `/">` +
  61. others.File_assets_sys_svg_edit + `</a>` +
  62. `<a class="ico" href="#">` + others.File_assets_sys_svg_remove + `</a>`
  63. }, "/cp/users/default/")
  64. return breadcrumb + data_table
  65. } else if this.smod == "modify" && this.imod == 0 {
  66. breadcrumb := this.breadcrumb([]dataBreadcrumb{
  67. {"Add new user", ""},
  68. })
  69. return breadcrumb
  70. } else if this.smod == "modify" && this.imod != 0 {
  71. breadcrumb := this.breadcrumb([]dataBreadcrumb{
  72. {"Edit user", ""},
  73. })
  74. return breadcrumb
  75. }
  76. return ""
  77. }
  78. func (this *Module) Module_users_sidebar() string {
  79. return ""
  80. }