diff options
author | ThibG <thib@sitedethib.com> | 2019-02-12 20:29:55 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2019-02-12 20:29:55 +0100 |
commit | a3ba28eb17d75af37396359e8c37675e06605ccf (patch) | |
tree | 20d81ffc7b01b132e1683685a0176ede6374c13c /app/models/tag.rb | |
parent | b89e003c4d049d64d2d4015357b8b931370bc5f0 (diff) | |
parent | b47a53f90299a1fb52423aacbc0c23427e2eb132 (diff) |
Merge pull request #913 from ThibG/glitch-soc/merge-upstream
Merge upstream changes
Diffstat (limited to 'app/models/tag.rb')
-rw-r--r-- | app/models/tag.rb | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/app/models/tag.rb b/app/models/tag.rb index 99830ae92..4373e967b 100644 --- a/app/models/tag.rb +++ b/app/models/tag.rb @@ -14,6 +14,7 @@ class Tag < ApplicationRecord has_and_belongs_to_many :accounts has_and_belongs_to_many :sample_accounts, -> { searchable.discoverable.popular.limit(3) }, class_name: 'Account' + has_many :featured_tags, dependent: :destroy, inverse_of: :tag has_one :account_tag_stat, dependent: :destroy HASHTAG_NAME_RE = '[[:word:]_]*[[:alpha:]_·][[:word:]_]*' @@ -23,6 +24,7 @@ class Tag < ApplicationRecord scope :discoverable, -> { joins(:account_tag_stat).where(AccountTagStat.arel_table[:accounts_count].gt(0)).where(account_tag_stats: { hidden: false }).order(Arel.sql('account_tag_stats.accounts_count desc')) } scope :hidden, -> { where(account_tag_stats: { hidden: true }) } + scope :most_used, ->(account) { joins(:statuses).where(statuses: { account: account }).group(:id).order(Arel.sql('count(*) desc')) } delegate :accounts_count, :accounts_count=, |