diff options
author | Thibaut Girka <thib@sitedethib.com> | 2019-02-26 17:04:44 +0100 |
---|---|---|
committer | Thibaut Girka <thib@sitedethib.com> | 2019-02-26 17:04:44 +0100 |
commit | 0158937fc2345a83f8ee5a64e85b14cabfe4b1e7 (patch) | |
tree | 79872e72c27d6371620c0dd8f04700aa0094020c /app/models | |
parent | d82de360c13894746d3974d11c9505c8937ebdee (diff) | |
parent | a5e7ada62fa2824be158f0b3bed7f3c39ce9c0fa (diff) |
Merge branch 'master' into glitch-soc/merge-upstream
Conflicts: - Dockerfile Took upstream version and reverted f13ebd02c91776ddb88b5178bf9015c6e0f1ca80. Hopefuly it's not needed anymore. - app/controllers/api/v1/search_controller.rb The conflict was due to us raising the number of results returned. Upstream raised it further, so took it. - config/locales/de.yml Took upstream changes to theme translation strings. - config/locales/gl.yml Took upstream changes to theme translation strings. - config/locales/nl.yml Took upstream changes to theme translation strings. - config/locales/sk.yml Took upstream changes to theme translation strings.
Diffstat (limited to 'app/models')
-rw-r--r-- | app/models/account.rb | 16 | ||||
-rw-r--r-- | app/models/tag.rb | 8 | ||||
-rw-r--r-- | app/models/user.rb | 2 |
3 files changed, 15 insertions, 11 deletions
diff --git a/app/models/account.rb b/app/models/account.rb index c86c6fdb5..0c08c0991 100644 --- a/app/models/account.rb +++ b/app/models/account.rb @@ -388,7 +388,7 @@ class Account < ApplicationRecord DeliveryFailureTracker.filter(urls) end - def search_for(terms, limit = 10) + def search_for(terms, limit = 10, offset = 0) textsearch, query = generate_query_for_search(terms) sql = <<-SQL.squish @@ -400,15 +400,15 @@ class Account < ApplicationRecord AND accounts.suspended = false AND accounts.moved_to_account_id IS NULL ORDER BY rank DESC - LIMIT ? + LIMIT ? OFFSET ? SQL - records = find_by_sql([sql, limit]) + records = find_by_sql([sql, limit, offset]) ActiveRecord::Associations::Preloader.new.preload(records, :account_stat) records end - def advanced_search_for(terms, account, limit = 10, following = false) + def advanced_search_for(terms, account, limit = 10, following = false, offset = 0) textsearch, query = generate_query_for_search(terms) if following @@ -429,10 +429,10 @@ class Account < ApplicationRecord AND accounts.moved_to_account_id IS NULL GROUP BY accounts.id ORDER BY rank DESC - LIMIT ? + LIMIT ? OFFSET ? SQL - records = find_by_sql([sql, account.id, account.id, account.id, limit]) + records = find_by_sql([sql, account.id, account.id, account.id, limit, offset]) else sql = <<-SQL.squish SELECT @@ -445,10 +445,10 @@ class Account < ApplicationRecord AND accounts.moved_to_account_id IS NULL GROUP BY accounts.id ORDER BY rank DESC - LIMIT ? + LIMIT ? OFFSET ? SQL - records = find_by_sql([sql, account.id, account.id, limit]) + records = find_by_sql([sql, account.id, account.id, limit, offset]) end ActiveRecord::Associations::Preloader.new.preload(records, :account_stat) diff --git a/app/models/tag.rb b/app/models/tag.rb index 4373e967b..788a678bd 100644 --- a/app/models/tag.rb +++ b/app/models/tag.rb @@ -64,9 +64,13 @@ class Tag < ApplicationRecord end class << self - def search_for(term, limit = 5) + def search_for(term, limit = 5, offset = 0) pattern = sanitize_sql_like(term.strip) + '%' - Tag.where('lower(name) like lower(?)', pattern).order(:name).limit(limit) + + Tag.where('lower(name) like lower(?)', pattern) + .order(:name) + .limit(limit) + .offset(offset) end end diff --git a/app/models/user.rb b/app/models/user.rb index ce9ef2a13..f91ed7015 100644 --- a/app/models/user.rb +++ b/app/models/user.rb @@ -245,7 +245,7 @@ class User < ApplicationRecord end def shows_application? - @shows_application ||= settings.shows_application + @shows_application ||= settings.show_application end def token_for_app(a) |