Merge branch 'master' into glitch-soc/merge-upstream

This commit is contained in:
Thibaut Girka
2018-10-28 08:37:49 +01:00
44 changed files with 267 additions and 256 deletions

View File

@@ -148,6 +148,7 @@ class MediaAttachment < ApplicationRecord
"#{x},#{y}"
end
after_commit :reset_parent_cache, on: :update
before_create :prepare_description, unless: :local?
before_create :set_shortcode
before_post_process :set_type_and_extension
@@ -252,4 +253,9 @@ class MediaAttachment < ApplicationRecord
bitrate: movie.bitrate,
}
end
def reset_parent_cache
return if status_id.nil?
Rails.cache.delete("statuses/#{status_id}")
end
end

View File

@@ -94,6 +94,7 @@ class Status < ApplicationRecord
:conversation,
:status_stat,
:tags,
:preview_cards,
:stream_entry,
active_mentions: :account,
reblog: [
@@ -101,6 +102,7 @@ class Status < ApplicationRecord
:application,
:stream_entry,
:tags,
:preview_cards,
:media_attachments,
:conversation,
:status_stat,
@@ -168,6 +170,10 @@ class Status < ApplicationRecord
reblog
end
def preview_card
preview_cards.first
end
def title
if destroyed?
"#{account.acct} deleted status"
@@ -241,10 +247,6 @@ class Status < ApplicationRecord
before_validation :set_local
class << self
def cache_ids
left_outer_joins(:status_stat).select('statuses.id, greatest(statuses.updated_at, status_stats.updated_at) AS updated_at')
end
def selectable_visibilities
visibilities.keys - %w(direct limited)
end

View File

@@ -14,4 +14,12 @@
class StatusStat < ApplicationRecord
belongs_to :status, inverse_of: :status_stat
after_commit :reset_parent_cache
private
def reset_parent_cache
Rails.cache.delete("statuses/#{status_id}")
end
end