2021-06-08 17:33:54 -06:00
|
|
|
// Copyright 2021 The Gitea Authors. All rights reserved.
|
2022-11-27 11:20:29 -07:00
|
|
|
// SPDX-License-Identifier: MIT
|
2021-06-08 17:33:54 -06:00
|
|
|
|
|
|
|
package explore
|
|
|
|
|
|
|
|
import (
|
2021-09-24 05:32:56 -06:00
|
|
|
"code.gitea.io/gitea/models/db"
|
2021-11-24 02:49:20 -07:00
|
|
|
user_model "code.gitea.io/gitea/models/user"
|
2024-02-27 02:10:51 -07:00
|
|
|
"code.gitea.io/gitea/modules/container"
|
2021-06-08 17:33:54 -06:00
|
|
|
"code.gitea.io/gitea/modules/setting"
|
|
|
|
"code.gitea.io/gitea/modules/structs"
|
2024-10-30 06:33:25 -06:00
|
|
|
"code.gitea.io/gitea/modules/util"
|
2024-02-27 00:12:22 -07:00
|
|
|
"code.gitea.io/gitea/services/context"
|
2021-06-08 17:33:54 -06:00
|
|
|
)
|
|
|
|
|
|
|
|
// Organizations render explore organizations page
|
|
|
|
func Organizations(ctx *context.Context) {
|
2024-10-21 23:09:19 -06:00
|
|
|
if setting.Service.Explore.DisableOrganizationsPage {
|
|
|
|
ctx.Redirect(setting.AppSubURL + "/explore")
|
|
|
|
return
|
|
|
|
}
|
|
|
|
|
|
|
|
ctx.Data["UsersPageIsDisabled"] = setting.Service.Explore.DisableUsersPage
|
|
|
|
ctx.Data["CodePageIsDisabled"] = setting.Service.Explore.DisableCodePage
|
2021-06-08 17:33:54 -06:00
|
|
|
ctx.Data["Title"] = ctx.Tr("explore")
|
|
|
|
ctx.Data["PageIsExplore"] = true
|
|
|
|
ctx.Data["PageIsExploreOrganizations"] = true
|
|
|
|
ctx.Data["IsRepoIndexerEnabled"] = setting.Indexer.RepoIndexerEnabled
|
|
|
|
|
|
|
|
visibleTypes := []structs.VisibleType{structs.VisibleTypePublic}
|
2022-03-22 01:03:22 -06:00
|
|
|
if ctx.Doer != nil {
|
2021-06-08 17:33:54 -06:00
|
|
|
visibleTypes = append(visibleTypes, structs.VisibleTypeLimited, structs.VisibleTypePrivate)
|
|
|
|
}
|
|
|
|
|
2024-02-27 02:10:51 -07:00
|
|
|
supportedSortOrders := container.SetOf(
|
|
|
|
"newest",
|
|
|
|
"oldest",
|
|
|
|
"alphabetically",
|
|
|
|
"reversealphabetically",
|
|
|
|
)
|
|
|
|
sortOrder := ctx.FormString("sort")
|
|
|
|
if sortOrder == "" {
|
2024-10-30 06:33:25 -06:00
|
|
|
sortOrder = util.Iif(supportedSortOrders.Contains(setting.UI.ExploreDefaultSort), setting.UI.ExploreDefaultSort, "newest")
|
2024-02-27 02:10:51 -07:00
|
|
|
ctx.SetFormString("sort", sortOrder)
|
2023-05-06 08:04:55 -06:00
|
|
|
}
|
|
|
|
|
2021-11-24 02:49:20 -07:00
|
|
|
RenderUserSearch(ctx, &user_model.SearchUserOptions{
|
2022-03-22 01:03:22 -06:00
|
|
|
Actor: ctx.Doer,
|
2021-11-24 02:49:20 -07:00
|
|
|
Type: user_model.UserTypeOrganization,
|
2021-09-24 05:32:56 -06:00
|
|
|
ListOptions: db.ListOptions{PageSize: setting.UI.ExplorePagingNum},
|
2021-06-08 17:33:54 -06:00
|
|
|
Visible: visibleTypes,
|
2024-02-27 02:10:51 -07:00
|
|
|
|
|
|
|
SupportedSortOrders: supportedSortOrders,
|
2023-08-11 14:07:04 -06:00
|
|
|
}, tplExploreUsers)
|
2021-06-08 17:33:54 -06:00
|
|
|
}
|