36 lines
792 B
Go
Raw Normal View History

package filtercompanies
import (
2019-06-01 04:55:49 +00:00
"net/http"
"github.com/aerogo/aero"
"github.com/animenotifier/arn"
"github.com/animenotifier/notify.moe/components"
2018-03-23 00:43:45 +00:00
"github.com/animenotifier/notify.moe/utils"
)
const maxEntries = 70
// NoDescription ...
2019-06-01 04:55:49 +00:00
func NoDescription(ctx aero.Context) error {
2018-03-23 00:43:45 +00:00
user := utils.GetUser(ctx)
if user == nil || (user.Role != "admin" && user.Role != "editor") {
2019-06-01 04:55:49 +00:00
return ctx.Redirect(http.StatusFound, "/")
2018-03-23 00:43:45 +00:00
}
companies := arn.FilterCompanies(func(company *arn.Company) bool {
return !company.IsDraft && len(company.Description) < 5
})
arn.SortCompaniesPopularFirst(companies)
count := len(companies)
if count > maxEntries {
companies = companies[:maxEntries]
}
2019-06-01 04:55:49 +00:00
return ctx.HTML(components.CompaniesEditorList(companies, count, ctx.Path(), user))
}