You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

17 lines
476 B

  1. # frozen_string_literal: true
  2. class ActivityPub::Activity::Update < ActivityPub::Activity
  3. SUPPORTED_TYPES = %w(Application Group Organization Person Service).freeze
  4. def perform
  5. update_account if equals_or_includes_any?(@object['type'], SUPPORTED_TYPES)
  6. end
  7. private
  8. def update_account
  9. return if @account.uri != object_uri
  10. ActivityPub::ProcessAccountService.new.call(@account.username, @account.domain, @object, signed_with_known_key: true)
  11. end
  12. end