From 2801eefd43febb8251fee2fccb56bf90a289972d Mon Sep 17 00:00:00 2001 From: Iain Learmonth Date: Thu, 25 Aug 2022 20:11:20 +0100 Subject: [PATCH] portal/search: compare case-insensitively --- app/portal/__init__.py | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/app/portal/__init__.py b/app/portal/__init__.py index 8680f48..8a6169b 100644 --- a/app/portal/__init__.py +++ b/app/portal/__init__.py @@ -4,7 +4,7 @@ from typing import Optional from flask import Blueprint, render_template, request from flask.typing import ResponseReturnValue from jinja2.utils import markupsafe -from sqlalchemy import desc, or_ +from sqlalchemy import desc, or_, func from app.alarms import alarms_for from app.models.activity import Activity @@ -129,8 +129,11 @@ def portal_home() -> ResponseReturnValue: @portal.route("/search") def search() -> ResponseReturnValue: query = request.args.get("query") - proxies = Proxy.query.filter(or_(Proxy.url.contains(query)), Proxy.destroyed.is_(None)).all() - origins = Origin.query.filter(or_(Origin.description.contains(query), Origin.domain_name.contains(query))).all() + proxies = Proxy.query.filter( + or_(func.lower(Proxy.url).contains(query.lower())), Proxy.destroyed.is_(None)).all() + origins = Origin.query.filter( + or_(func.lower(Origin.description).contains(query.lower()), + func.lower(Origin.domain_name).contains(query.lower()))).all() return render_template("search.html.j2", section="home", proxies=proxies, origins=origins)