Fix serialization of boosts (#10129)
The condition introduced by #9998 was wrong, serializing boosts that weren't self-boosts, and not serializing self-boosts.
This commit is contained in:
		
							parent
							
								
									d8498b3983
								
							
						
					
					
						commit
						ee7d79c0ce
					
				
					 1 changed files with 6 additions and 4 deletions
				
			
		|  | @ -3,8 +3,8 @@ | |||
| class ActivityPub::ActivitySerializer < ActiveModel::Serializer | ||||
|   attributes :id, :type, :actor, :published, :to, :cc | ||||
| 
 | ||||
|   has_one :proper, key: :object, serializer: ActivityPub::NoteSerializer, unless: :owned_announce? | ||||
|   attribute :proper_uri, key: :object, if: :owned_announce? | ||||
|   has_one :proper, key: :object, serializer: ActivityPub::NoteSerializer, if: :serialize_object? | ||||
|   attribute :proper_uri, key: :object, unless: :serialize_object? | ||||
|   attribute :atom_uri, if: :announce? | ||||
| 
 | ||||
|   def id | ||||
|  | @ -43,7 +43,9 @@ class ActivityPub::ActivitySerializer < ActiveModel::Serializer | |||
|     object.reblog? | ||||
|   end | ||||
| 
 | ||||
|   def owned_announce? | ||||
|     announce? && object.account == object.proper.account && object.proper.private_visibility? | ||||
|   def serialize_object? | ||||
|     return true unless announce? | ||||
|     # Serialize private self-boosts of local toots | ||||
|     object.account == object.proper.account && object.proper.private_visibility? && object.local? | ||||
|   end | ||||
| end | ||||
|  |  | |||
		Reference in a new issue