module_users.go 2.0 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788
  1. package modules
  2. import (
  3. others "golang-fave/engine/wrapper/resources/others"
  4. utils "golang-fave/engine/wrapper/utils"
  5. )
  6. func (this *Module) Module_users() {
  7. // Do something here...
  8. }
  9. func (this *Module) Module_users_display() bool {
  10. return false
  11. }
  12. func (this *Module) Module_users_alias() string {
  13. return "users"
  14. }
  15. func (this *Module) Module_users_name() string {
  16. return "Users"
  17. }
  18. func (this *Module) Module_users_icon() string {
  19. return others.File_assets_sys_svg_user
  20. }
  21. func (this *Module) Module_users_order() int {
  22. return 100
  23. }
  24. func (this *Module) Module_users_submenu() []utils.ModuleSubMenu {
  25. result := make([]utils.ModuleSubMenu, 0)
  26. result = append(result, utils.ModuleSubMenu{
  27. Alias: "default",
  28. Name: "List of users",
  29. Icon: others.File_assets_sys_svg_list,
  30. })
  31. result = append(result, utils.ModuleSubMenu{
  32. Alias: "modify",
  33. Name: "Add new user",
  34. Icon: others.File_assets_sys_svg_plus,
  35. })
  36. return result
  37. }
  38. func (this *Module) Module_users_content() string {
  39. if this.smod == "default" {
  40. // List
  41. result := `<table class="table table-striped table-bordered">
  42. <thead>
  43. <tr>
  44. <th scope="col">Email</th>
  45. <th scope="col">First name</th>
  46. <th scope="col">Last name</th>
  47. <th scope="col">Action</th>
  48. </tr>
  49. </thead>
  50. <tbody>`
  51. rows, err := this.db.Query("SELECT `id`, `first_name`, `last_name`, `email` FROM `users`;")
  52. if err == nil {
  53. var id int
  54. var first_name string
  55. var last_name string
  56. var email string
  57. for rows.Next() {
  58. err = rows.Scan(&id, &first_name, &last_name, &email)
  59. if err == nil {
  60. result += `<tr>
  61. <td>` + email + `</td>
  62. <td>` + first_name + `</td>
  63. <td>` + last_name + `</td>
  64. <td><a href="#">` + others.File_assets_sys_svg_edit + `</a> <a href="#">` + others.File_assets_sys_svg_remove + `</a></td>
  65. </tr>`
  66. }
  67. }
  68. }
  69. result += `</tbody></table>`
  70. return result
  71. } else if this.smod == "modify" {
  72. // Add/Edit
  73. }
  74. return ""
  75. }
  76. func (this *Module) Module_users_sidebar() string {
  77. return ""
  78. }