Use likes and shares totalItems on status creations and updates (#32620)
				
					
				
			This commit is contained in:
		@@ -43,6 +43,7 @@ class ActivityPub::ProcessStatusUpdateService < BaseService
 | 
			
		||||
        update_poll!
 | 
			
		||||
        update_immediate_attributes!
 | 
			
		||||
        update_metadata!
 | 
			
		||||
        update_counts!
 | 
			
		||||
        create_edits!
 | 
			
		||||
      end
 | 
			
		||||
 | 
			
		||||
@@ -62,6 +63,7 @@ class ActivityPub::ProcessStatusUpdateService < BaseService
 | 
			
		||||
    with_redis_lock("create:#{@uri}") do
 | 
			
		||||
      update_poll!(allow_significant_changes: false)
 | 
			
		||||
      queue_poll_notifications!
 | 
			
		||||
      update_counts!
 | 
			
		||||
    end
 | 
			
		||||
  end
 | 
			
		||||
 | 
			
		||||
@@ -239,6 +241,19 @@ class ActivityPub::ProcessStatusUpdateService < BaseService
 | 
			
		||||
    end
 | 
			
		||||
  end
 | 
			
		||||
 | 
			
		||||
  def update_counts!
 | 
			
		||||
    likes = @status_parser.favourites_count
 | 
			
		||||
    shares =  @status_parser.reblogs_count
 | 
			
		||||
    return if likes.nil? && shares.nil?
 | 
			
		||||
 | 
			
		||||
    @status.status_stat.tap do |status_stat|
 | 
			
		||||
      status_stat.untrusted_reblogs_count = shares unless shares.nil?
 | 
			
		||||
      status_stat.untrusted_favourites_count = likes unless likes.nil?
 | 
			
		||||
 | 
			
		||||
      status_stat.save if status_stat.changed?
 | 
			
		||||
    end
 | 
			
		||||
  end
 | 
			
		||||
 | 
			
		||||
  def expected_type?
 | 
			
		||||
    equals_or_includes_any?(@json['type'], %w(Note Question))
 | 
			
		||||
  end
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user