# 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, :contact_url, :contact_email def include_stats? can_see_about_stats end def stats object.class.fetch_cached_stats || Jobs::AboutStats.new.execute({}) end def include_contact_url? can_see_site_contact_details end def contact_url SiteSetting.contact_url end def include_contact_email? can_see_site_contact_details end def contact_email SiteSetting.contact_email end private def can_see_about_stats scope.can_see_about_stats? end def can_see_site_contact_details scope.can_see_site_contact_details? end end