Merge commit '8a412f0f59' into kb_migration

This commit is contained in:
KMY 2023-04-15 14:44:23 +09:00
commit 1582bb0610
7 changed files with 29 additions and 25 deletions

View file

@ -1288,7 +1288,7 @@ body > [data-popper-placement] {
display: flex;
flex-wrap: wrap;
gap: 4px 8px;
margin: 8px 0 2px 4px;
margin: 12px 0 2px 4px;
.emoji-reactions-bar__button {
background: lighten($ui-base-color, 12%);
@ -1297,26 +1297,28 @@ body > [data-popper-placement] {
display: flex;
justify-items: center;
align-items: center;
height: 20px;
height: 24px;
&.toggled {
background: darken($ui-primary-color, 16%);
}
.emoji {
> .emoji {
display: block;
height: 16px;
height: 20px;
transition: transform 0.2s ease;
&:hover {
transform: scale(1.2);
transform: scale(1.44);
}
img {
margin-top: 0;
margin-bottom: 0;
height: 20px;
}
}
.count {
display: block;
margin: 0 2px;

View file

@ -36,6 +36,8 @@ class ActivityPub::Activity::Like < ActivityPub::Activity
emoji.uri = uri
emoji.image_remote_url = image_url
end
Trends.statuses.register(@original_status)
end
return if EmojiReaction.where(account: @account, status: @original_status).count >= EmojiReaction::EMOJI_REACTION_PER_ACCOUNT_LIMIT

View file

@ -315,8 +315,8 @@ class Status < ApplicationRecord
status_stat&.emoji_reactions_count || 0
end
def emoji_reactions_count_per_account
status_stat&.emoji_reactions_count_per_account || 0
def emoji_reaction_accounts_count
status_stat&.emoji_reaction_accounts_count || 0
end
def increment_count!(key)
@ -346,7 +346,7 @@ class Status < ApplicationRecord
def refresh_emoji_reactions_grouped_by_name!
generate_emoji_reactions_grouped_by_name.tap do |emoji_reactions_json|
update_status_stat!(emoji_reactions: emoji_reactions_json, emoji_reactions_count: emoji_reactions.size, emoji_reactions_count_per_account: emoji_reactions.map(&:account_id).uniq.size)
update_status_stat!(emoji_reactions: emoji_reactions_json, emoji_reactions_count: emoji_reactions.size, emoji_reaction_accounts_count: emoji_reactions.map(&:account_id).uniq.size)
end
end

View file

@ -14,7 +14,7 @@
# emoji_reactions :string
# emoji_reactions_count :integer default(0), not null
# test :integer default(0), not null
# emoji_reactions_count_per_account :integer default(0), not null
# emoji_reaction_accounts_count :integer default(0), not null
#
class StatusStat < ApplicationRecord
@ -42,8 +42,8 @@ class StatusStat < ApplicationRecord
[attributes['emoji_reactions_count'], 0].max
end
def emoji_reactions_count_per_account
[attributes['emoji_reactions_count_per_account'], 0].max
def emoji_reaction_accounts_count
[attributes['emoji_reaction_accounts_count'], 0].max
end
private

View file

@ -91,13 +91,13 @@ class Trends::Statuses < Trends::Base
private
def eligible?(status)
status.public_visibility? && status.account.discoverable? && !status.account.silenced? && status.spoiler_text.blank? && !status.sensitive? && !status.reply? && valid_locale?(status.language)
(status.searchability.nil? || status.public_searchability?) && (status.public_visibility? || status.public_unlisted_visibility?) && status.account.discoverable? && !status.account.silenced? && status.spoiler_text.blank? && (!status.sensitive? || !status.media_attachments.any?) && !status.reply? && valid_locale?(status.language)
end
def calculate_scores(statuses, at_time)
items = statuses.map do |status|
expected = 1.0
observed = (status.reblogs_count + status.favourites_count + status.emoji_reactions_count_per_account * 0.8).to_f
observed = (status.reblogs_count + status.favourites_count + status.emoji_reaction_accounts_count * 0.8).to_f
score = if expected > observed || observed < options[:threshold]
0

View file

@ -1,5 +1,5 @@
class AddEmojiReactionsCountPerAccountToStatusStats < ActiveRecord::Migration[6.1]
def change
add_column :status_stats, :emoji_reactions_count_per_account, :integer, null: false, default: 0
add_column :status_stats, :emoji_reaction_accounts_count, :integer, null: false, default: 0
end
end

View file

@ -936,7 +936,7 @@ ActiveRecord::Schema.define(version: 2023_04_14_010523) do
t.string "emoji_reactions"
t.integer "emoji_reactions_count", default: 0, null: false
t.integer "test", default: 0, null: false
t.integer "emoji_reactions_count_per_account", default: 0, null: false
t.integer "emoji_reaction_accounts_count", default: 0, null: false
t.index ["status_id"], name: "index_status_stats_on_status_id", unique: true
end