mirror of
https://github.com/discourse/discourse.git
synced 2025-02-05 19:11:13 +00:00
This PR adds a theme modifier and route so that custom themes can opt to show their own homepage. See PR description for example usage.
62 lines
1.3 KiB
Ruby
62 lines
1.3 KiB
Ruby
# frozen_string_literal: true
|
|
|
|
class WebHookUserSerializer < UserSerializer
|
|
attributes :external_id
|
|
|
|
# remove staff attributes
|
|
def staff_attributes(*attrs)
|
|
end
|
|
|
|
%i[
|
|
unconfirmed_emails
|
|
can_edit
|
|
can_edit_username
|
|
can_edit_email
|
|
can_edit_name
|
|
can_send_private_messages
|
|
can_send_private_message_to_user
|
|
can_ignore_user
|
|
can_mute_user
|
|
ignored
|
|
uploaded_avatar_id
|
|
has_title_badges
|
|
bio_cooked
|
|
custom_fields
|
|
can_be_deleted
|
|
can_delete_all_posts
|
|
system_avatar_upload_id
|
|
gravatar_avatar_upload_id
|
|
custom_avatar_upload_id
|
|
can_change_bio
|
|
can_change_location
|
|
can_change_website
|
|
can_change_tracking_preferences
|
|
user_api_keys
|
|
user_passkeys
|
|
group_users
|
|
user_auth_tokens
|
|
user_auth_token_logs
|
|
use_logo_small_as_avatar
|
|
pending_posts_count
|
|
status
|
|
display_sidebar_tags
|
|
sidebar_category_ids
|
|
sidebar_tags
|
|
can_pick_theme_with_custom_homepage
|
|
].each { |attr| define_method("include_#{attr}?") { false } }
|
|
|
|
def include_email?
|
|
scope.is_admin?
|
|
end
|
|
|
|
alias_method :include_secondary_emails?, :include_email?
|
|
|
|
def include_external_id?
|
|
scope.is_admin? && object.single_sign_on_record
|
|
end
|
|
|
|
def external_id
|
|
object.single_sign_on_record.external_id
|
|
end
|
|
end
|