Make sure the poll is created before storing its id (#10142)
* Make sure the poll is created before storing its id * Fix updating poll results * Support fetching Question activities from the search bar
This commit is contained in:
		
					parent
					
						
							
								5dfa433698
							
						
					
				
			
			
				commit
				
					
						e13d3792f3
					
				
			
		
					 3 changed files with 4 additions and 4 deletions
				
			
		|  | @ -255,7 +255,7 @@ class Status < ApplicationRecord | |||
|   before_validation :set_conversation | ||||
|   before_validation :set_local | ||||
| 
 | ||||
|   before_save :set_poll_id | ||||
|   after_create :set_poll_id | ||||
| 
 | ||||
|   class << self | ||||
|     def selectable_visibilities | ||||
|  | @ -446,7 +446,7 @@ class Status < ApplicationRecord | |||
|   end | ||||
| 
 | ||||
|   def set_poll_id | ||||
|     self.poll_id = owned_poll.id unless owned_poll.nil? | ||||
|     update_column(:poll_id, owned_poll.id) unless owned_poll.nil? | ||||
|   end | ||||
| 
 | ||||
|   def set_visibility | ||||
|  |  | |||
|  | @ -46,6 +46,6 @@ class ActivityPub::FetchRemotePollService < BaseService | |||
|   end | ||||
| 
 | ||||
|   def expected_type? | ||||
|     equals_or_includes_any?(@json['type'], 'Question') | ||||
|     equals_or_includes_any?(@json['type'], %w(Question)) | ||||
|   end | ||||
| end | ||||
|  |  | |||
|  | @ -20,7 +20,7 @@ class ResolveURLService < BaseService | |||
|   def process_url | ||||
|     if equals_or_includes_any?(type, %w(Application Group Organization Person Service)) | ||||
|       FetchRemoteAccountService.new.call(atom_url, body, protocol) | ||||
|     elsif equals_or_includes_any?(type, %w(Note Article Image Video Page)) | ||||
|     elsif equals_or_includes_any?(type, %w(Note Article Image Video Page Question)) | ||||
|       FetchRemoteStatusService.new.call(atom_url, body, protocol) | ||||
|     end | ||||
|   end | ||||
|  |  | |||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue