diff --git a/core/plugin/score/select.rb b/core/plugin/score/select.rb index 122c9b9..73a0f61 100644 --- a/core/plugin/score/select.rb +++ b/core/plugin/score/select.rb @@ -4,6 +4,10 @@ module Plugin::Score extend self def score_by_score(model, target_note=model) + if model === target_note && model.respond_to?(:score) + return score_expand(model.score, model) + end + _, _, available_score_list = Plugin.filtering(:score_filter, model, target_note, Set.new) selected_score = choose_best_score(available_score_list) if selected_score && !selected_score.all? { |s| s.is_a?(Plugin::Score::TextNote) } diff --git a/core/plugin/twitter/model/message.rb b/core/plugin/twitter/model/message.rb index 4f58e23..4ea92ce 100644 --- a/core/plugin/twitter/model/message.rb +++ b/core/plugin/twitter/model/message.rb @@ -717,6 +717,11 @@ class Plugin::Twitter::Message < Diva::Model "#<#{self.class.name}: #{id} #{user.inspect} #{to_show}>" end + # Twitter Entity情報を元にScoreをあれする + def score + Plugin[:twitter].score_by_entity(self) + Plugin[:twitter].extended_entity_media(self) + end + private def add_retweet_in_this_thread(child, created_at=child[:created]) diff --git a/core/plugin/twitter/twitter.rb b/core/plugin/twitter/twitter.rb index 1cb0208..f28cdd7 100644 --- a/core/plugin/twitter/twitter.rb +++ b/core/plugin/twitter/twitter.rb @@ -291,17 +291,6 @@ Plugin.create(:twitter) do [url, posted_url_length(url)] end - # Twitter Entity情報を元にScoreをあれする - filter_score_filter do |message, note, yielder| - if message == note && %i.include?(message.class.slug) - score = score_by_entity(message) + extended_entity_media(message) - if !score.all?{|n| n.class.slug == :score_text } - yielder << score - end - end - [message, note, yielder] - end - # 正規表現マッチで、ユーザのSNっぽいやつをユーザページにリンクする filter_score_filter do |message, note, yielder| if message != note && %i.include?(message.class.slug)