Case-insensitive search

This commit is contained in:
Mint 2023-10-08 08:50:17 +03:00
parent a3eb8c1807
commit 7ac5645916

6
api.py
View file

@ -85,12 +85,12 @@ def blocked(domain: str = None, reason: str = None, reverse: str = None):
if domain != None:
wildchar = "*." + ".".join(domain.split(".")[-domain.count("."):])
punycode = domain.encode('idna').decode('utf-8')
c.execute("select blocker, blocked, block_level, reason, first_added, last_seen from blocks where blocked = ? or blocked = ? or blocked = ? or blocked = ? or blocked = ? or blocked = ? order by first_added asc",
c.execute("select blocker, blocked, block_level, reason, first_added, last_seen from blocks where blocked = ? collate nocase or blocked = ? collate nocase or blocked = ? collate nocase or blocked = ? collate nocase or blocked = ? collate nocase or blocked = ? collate nocase order by first_added asc",
(domain, "*." + domain, wildchar, get_hash(domain), punycode, "*." + punycode))
elif reverse != None:
c.execute("select blocker, blocked, block_level, reason, first_added, last_seen from blocks where blocker = ? order by first_added asc", (reverse,))
c.execute("select blocker, blocked, block_level, reason, first_added, last_seen from blocks where blocker = ? collate nocase order by first_added asc", (reverse,))
else:
c.execute("select blocker, blocked, block_level, reason, first_added, last_seen from blocks where reason like ? and reason != '' order by first_added asc", ("%"+reason+"%",))
c.execute("select blocker, blocked, block_level, reason, first_added, last_seen from blocks where reason like ? and reason != '' collate nocase order by first_added asc", ("%"+reason+"%",))
blocks = c.fetchall()
c.close()