Convert OStatus tag to ActivityPub id on in_reply_to resolution (#4756)
This commit is contained in:
		
							parent
							
								
									af2d22f88c
								
							
						
					
					
						commit
						504737e860
					
				@ -56,6 +56,16 @@ class OStatus::Activity::Base
 | 
				
			|||||||
    Status.find_by(uri: uri)
 | 
					    Status.find_by(uri: uri)
 | 
				
			||||||
  end
 | 
					  end
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  def find_activitypub_status(uri, href)
 | 
				
			||||||
 | 
					    tag_matches = /tag:([^,:]+)[^:]*:objectId=([\d]+)/.match(uri)
 | 
				
			||||||
 | 
					    href_matches = %r{/users/([^/]+)}.match(href)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    unless tag_matches.nil? || href_matches.nil?
 | 
				
			||||||
 | 
					      uri = "https://#{tag_matches[1]}/users/#{href_matches[1]}/statuses/#{tag_matches[2]}"
 | 
				
			||||||
 | 
					      Status.find_by(uri: uri)
 | 
				
			||||||
 | 
					    end
 | 
				
			||||||
 | 
					  end
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  def redis
 | 
					  def redis
 | 
				
			||||||
    Redis.current
 | 
					    Redis.current
 | 
				
			||||||
  end
 | 
					  end
 | 
				
			||||||
 | 
				
			|||||||
@ -36,7 +36,7 @@ class OStatus::Activity::Creation < OStatus::Activity::Base
 | 
				
			|||||||
        language: content_language,
 | 
					        language: content_language,
 | 
				
			||||||
        visibility: visibility_scope,
 | 
					        visibility: visibility_scope,
 | 
				
			||||||
        conversation: find_or_create_conversation,
 | 
					        conversation: find_or_create_conversation,
 | 
				
			||||||
        thread: thread? ? find_status(thread.first) : nil
 | 
					        thread: thread? ? find_status(thread.first) || find_activitypub_status(thread.first, thread.second) : nil
 | 
				
			||||||
      )
 | 
					      )
 | 
				
			||||||
 | 
					
 | 
				
			||||||
      save_mentions(status)
 | 
					      save_mentions(status)
 | 
				
			||||||
 | 
				
			|||||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user