discourse/app/serializers/about_serializer.rb
Michael Brown d9a02d1336
Revert "Revert "Merge branch 'master' of https://github.com/discourse/discourse""
This reverts commit 20780a1eee.

* SECURITY: re-adds accidentally reverted commit:
  03d26cd6: ensure embed_url contains valid http(s) uri
* when the merge commit e62a85cf was reverted, git chose the 2660c2e2 parent to land on
  instead of the 03d26cd6 parent (which contains security fixes)
2020-05-23 00:56:13 -04:00

39 lines
956 B
Ruby

# frozen_string_literal: true
class AboutSerializer < ApplicationSerializer
class UserAboutSerializer < BasicUserSerializer
attributes :title, :last_seen_at
end
class AboutCategoryModsSerializer < ApplicationSerializer
attributes :category_id
has_many :moderators, serializer: UserAboutSerializer, embed: :objects
end
has_many :moderators, serializer: UserAboutSerializer, embed: :objects
has_many :admins, serializer: UserAboutSerializer, embed: :objects
has_many :category_moderators, serializer: AboutCategoryModsSerializer, embed: :objects
attributes :stats,
:description,
:title,
:locale,
:version,
:https,
:can_see_about_stats
def can_see_about_stats
scope.can_see_about_stats?
end
def include_stats?
can_see_about_stats
end
def stats
object.class.fetch_cached_stats || Jobs::AboutStats.new.execute({})
end
end