admin.go 1.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960
  1. package form
  2. import (
  3. "github.com/go-macaron/binding"
  4. "gopkg.in/macaron.v1"
  5. )
  6. type AdminCrateUser struct {
  7. LoginType string `binding:"Required"`
  8. LoginName string
  9. UserName string `binding:"Required;AlphaDashDot;MaxSize(35)"`
  10. Email string `binding:"Required;Email;MaxSize(254)"`
  11. Password string `binding:"MaxSize(255)"`
  12. SendNotify bool
  13. }
  14. func (f *AdminCrateUser) Validate(ctx *macaron.Context, errs binding.Errors) binding.Errors {
  15. return validate(errs, ctx.Data, f, ctx.Locale)
  16. }
  17. type AdminEditUser struct {
  18. LoginType string `binding:"Required"`
  19. LoginName string
  20. FullName string `binding:"MaxSize(100)"`
  21. Company string
  22. Description string
  23. ThemeColor string
  24. Email string `binding:"Required;Email;MaxSize(254)"`
  25. Password string `binding:"MaxSize(255)"`
  26. Website string `binding:"MaxSize(50)"`
  27. Location string `binding:"MaxSize(50)"`
  28. StaffNotes string `binding:"MaxSize(255)"`
  29. Twitter string `binding:"MaxSize(50)"`
  30. Linkedin string `binding:"MaxSize(50)"`
  31. Github string `binding:"MaxSize(50)"`
  32. Devto string `binding:"MaxSize(50)"`
  33. Stackoverflow string `binding:"MaxSize(50)"`
  34. Reddit string `binding:"MaxSize(50)"`
  35. Telegram string `binding:"MaxSize(50)"`
  36. Codepen string `binding:"MaxSize(50)"`
  37. Recognized string
  38. Certified string
  39. MaxRepoCreation int
  40. Active bool
  41. Admin bool
  42. AllowGitHook bool
  43. AllowImportLocal bool
  44. Suspended bool
  45. IsVerified bool
  46. IsMaker bool
  47. IsBugHunter bool
  48. IsBeta bool
  49. IsStaff bool
  50. IsIntern bool
  51. }
  52. func (f *AdminEditUser) Validate(ctx *macaron.Context, errs binding.Errors) binding.Errors {
  53. return validate(errs, ctx.Data, f, ctx.Locale)
  54. }