Make search statement in List Room and User Admin API case-insensitive (#8931)

This commit is contained in:
Dirk Klimpel 2020-12-17 11:43:37 +01:00 committed by GitHub
parent ff5c4da128
commit 06006058d7
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
7 changed files with 125 additions and 11 deletions

View file

@ -339,12 +339,13 @@ class DataStore(
filters = []
args = [self.hs.config.server_name]
# `name` is in database already in lower case
if name:
filters.append("(name LIKE ? OR displayname LIKE ?)")
args.extend(["@%" + name + "%:%", "%" + name + "%"])
filters.append("(name LIKE ? OR LOWER(displayname) LIKE ?)")
args.extend(["@%" + name.lower() + "%:%", "%" + name.lower() + "%"])
elif user_id:
filters.append("name LIKE ?")
args.extend(["%" + user_id + "%"])
args.extend(["%" + user_id.lower() + "%"])
if not guests:
filters.append("is_guest = 0")