gitea源码

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556
  1. // Copyright 2021 The Gitea Authors. All rights reserved.
  2. // SPDX-License-Identifier: MIT
  3. package explore
  4. import (
  5. "code.gitea.io/gitea/models/db"
  6. user_model "code.gitea.io/gitea/models/user"
  7. "code.gitea.io/gitea/modules/container"
  8. "code.gitea.io/gitea/modules/setting"
  9. "code.gitea.io/gitea/modules/structs"
  10. "code.gitea.io/gitea/modules/util"
  11. "code.gitea.io/gitea/services/context"
  12. )
  13. // Organizations render explore organizations page
  14. func Organizations(ctx *context.Context) {
  15. if setting.Service.Explore.DisableOrganizationsPage {
  16. ctx.Redirect(setting.AppSubURL + "/explore")
  17. return
  18. }
  19. ctx.Data["UsersPageIsDisabled"] = setting.Service.Explore.DisableUsersPage
  20. ctx.Data["CodePageIsDisabled"] = setting.Service.Explore.DisableCodePage
  21. ctx.Data["Title"] = ctx.Tr("explore")
  22. ctx.Data["PageIsExplore"] = true
  23. ctx.Data["PageIsExploreOrganizations"] = true
  24. ctx.Data["IsRepoIndexerEnabled"] = setting.Indexer.RepoIndexerEnabled
  25. visibleTypes := []structs.VisibleType{structs.VisibleTypePublic}
  26. if ctx.Doer != nil {
  27. visibleTypes = append(visibleTypes, structs.VisibleTypeLimited, structs.VisibleTypePrivate)
  28. }
  29. supportedSortOrders := container.SetOf(
  30. "newest",
  31. "oldest",
  32. "alphabetically",
  33. "reversealphabetically",
  34. )
  35. sortOrder := ctx.FormString("sort")
  36. if sortOrder == "" {
  37. sortOrder = util.Iif(supportedSortOrders.Contains(setting.UI.ExploreDefaultSort), setting.UI.ExploreDefaultSort, "newest")
  38. ctx.SetFormString("sort", sortOrder)
  39. }
  40. RenderUserSearch(ctx, user_model.SearchUserOptions{
  41. Actor: ctx.Doer,
  42. Type: user_model.UserTypeOrganization,
  43. ListOptions: db.ListOptions{PageSize: setting.UI.ExplorePagingNum},
  44. Visible: visibleTypes,
  45. SupportedSortOrders: supportedSortOrders,
  46. }, tplExploreUsers)
  47. }