Skip to content
Extraits de code Groupes Projets
Valider 5c99e304 rédigé par Eugen Rochko's avatar Eugen Rochko
Parcourir les fichiers

Deleting statuses, deletion propagation

parent 75b3339a
Aucune branche associée trouvée
Aucune étiquette associée trouvée
Aucune requête de fusion associée trouvée
......@@ -16,12 +16,12 @@ Mastodon is a federated microblogging engine. An alternative implementation of t
- REST API, including home and mention timelines
- OAuth2 provider system for the API
- Upload header image for profile page
- Deleting statuses, deletion propagation
Missing:
- Media attachments (photos, videos)
- UI to post, reblog, favourite, follow and unfollow
- Deleting statuses, deletion propagation
- Streaming API
## Configuration
......
......@@ -147,8 +147,8 @@ module AtomBuilderHelper
def include_entry(xml, stream_entry)
unique_id xml, stream_entry.created_at, stream_entry.activity_id, stream_entry.activity_type
published_at xml, stream_entry.activity.created_at
updated_at xml, stream_entry.activity.updated_at
published_at xml, stream_entry.created_at
updated_at xml, stream_entry.updated_at
title xml, stream_entry.title
content xml, stream_entry.content
verb xml, stream_entry.verb
......
......@@ -12,7 +12,7 @@ class Feed
return PrecomputeFeedService.new.(@type, @account).take(limit) if unhydrated.empty? && offset == 0
Status.where(id: unhydrated).with_includes.with_counters.each { |status| status_map[status.id.to_s] = status }
return unhydrated.map { |id| status_map[id] }
return unhydrated.map { |id| status_map[id] }.compact
end
private
......
......@@ -4,7 +4,7 @@ class Status < ActiveRecord::Base
belongs_to :thread, foreign_key: 'in_reply_to_id', class_name: 'Status', inverse_of: :replies
belongs_to :reblog, foreign_key: 'reblog_of_id', class_name: 'Status', inverse_of: :reblogs
has_one :stream_entry, as: :activity, dependent: :destroy
has_one :stream_entry, as: :activity
has_many :favourites, inverse_of: :status, dependent: :destroy
has_many :reblogs, foreign_key: 'reblog_of_id', class_name: 'Status', inverse_of: :reblog, dependent: :destroy
......
......@@ -5,11 +5,11 @@ class StreamEntry < ActiveRecord::Base
validates :account, :activity, presence: true
def object_type
targeted? ? :activity : self.activity.object_type
orphaned? ? :activity : (targeted? ? :activity : self.activity.object_type)
end
def verb
self.activity.verb
orphaned? ? :delete : self.activity.verb
end
def targeted?
......@@ -17,15 +17,15 @@ class StreamEntry < ActiveRecord::Base
end
def target
self.activity.target
orphaned? ? nil : self.activity.target
end
def title
self.activity.title
orphaned? ? nil : self.activity.title
end
def content
self.activity.content
orphaned? ? nil : self.activity.content
end
def threaded?
......@@ -33,10 +33,16 @@ class StreamEntry < ActiveRecord::Base
end
def thread
self.activity.thread
orphaned? ? nil : self.activity.thread
end
def mentions
self.activity.mentions
orphaned? ? [] : self.activity.mentions
end
private
def orphaned?
self.activity.nil?
end
end
0% Chargement en cours ou .
You are about to add 0 people to the discussion. Proceed with caution.
Terminez d'abord l'édition de ce message.
Veuillez vous inscrire ou vous pour commenter