0
0
Fork 0

Add support for fediverse:creator OpenGraph tag (#30398)

This commit is contained in:
Eugen Rochko 2024-05-29 01:34:33 +02:00 committed by GitHub
parent 4a77e477ee
commit 128987eded
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
11 changed files with 105 additions and 15 deletions

View file

@ -147,9 +147,12 @@ class FetchLinkCardService < BaseService
return if html.nil?
link_details_extractor = LinkDetailsExtractor.new(@url, @html, @html_charset)
provider = PreviewCardProvider.matching_domain(Addressable::URI.parse(link_details_extractor.canonical_url).normalized_host)
linked_account = ResolveAccountService.new.call(link_details_extractor.author_account, suppress_errors: true) if link_details_extractor.author_account.present? && provider&.trendable?
@card = PreviewCard.find_or_initialize_by(url: link_details_extractor.canonical_url) if link_details_extractor.canonical_url != @card.url
@card.assign_attributes(link_details_extractor.to_preview_card_attributes)
@card.author_account = linked_account
@card.save_with_optional_image! unless @card.title.blank? && @card.html.blank?
end
end