mirror of
https://github.com/discourse/discourse.git
synced 2024-12-20 00:55:58 +08:00
1eb70973a2
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
|