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

Conflicts:
- Dockerfile
  Took upstream version and reverted f13ebd02c9.
  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.
This commit is contained in:
Thibaut Girka
2019-02-26 17:04:44 +01:00
131 changed files with 4297 additions and 1246 deletions

View File

@@ -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)

View File

@@ -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

View File

@@ -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)