aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorrubenwardy <rw@rubenwardy.com>2018-06-04 18:59:21 +0100
committerrubenwardy <rw@rubenwardy.com>2018-06-04 19:02:02 +0100
commit7d60e2f6710ce9670e83ea26c3caf006bda11290 (patch)
tree6a9f3016b1968235e3f79d31406c932e45b7da1f
parent8b2018852e54a005a39234d6965e6268192718dc (diff)
downloadcheatdb-7d60e2f6710ce9670e83ea26c3caf006bda11290.tar.xz
Fix crash on any type search
-rw-r--r--app/views/packages/__init__.py15
1 files changed, 8 insertions, 7 deletions
diff --git a/app/views/packages/__init__.py b/app/views/packages/__init__.py
index e062268..2a029a5 100644
--- a/app/views/packages/__init__.py
+++ b/app/views/packages/__init__.py
@@ -38,9 +38,10 @@ from wtforms.ext.sqlalchemy.fields import QuerySelectField, QuerySelectMultipleF
@menu.register_menu(app, ".txp", "Texture Packs", order=13, endpoint_arguments_constructor=lambda: { 'type': 'txp' })
@app.route("/packages/")
def packages_page():
- type = request.args.get("type")
- if type is not None:
- type = PackageType[type.upper()]
+ type_name = request.args.get("type")
+ type = None
+ if type_name is not None:
+ type = PackageType[type_name.upper()]
title = "Packages"
query = Package.query.filter_by(soft_deleted=False)
@@ -50,7 +51,7 @@ def packages_page():
query = query.filter_by(type=type, approved=True)
search = request.args.get("q")
- if search is not None:
+ if search is not None and search.strip() != "":
query = query.filter(Package.title.ilike('%' + search + '%'))
if shouldReturnJson():
@@ -62,14 +63,14 @@ def packages_page():
num = min(42, int(request.args.get("n") or 100))
query = query.paginate(page, num, True)
- next_url = url_for("packages_page", type=type.toName(), q=search, page=query.next_num) \
+ next_url = url_for("packages_page", type=type_name, q=search, page=query.next_num) \
if query.has_next else None
- prev_url = url_for("packages_page", type=type.toName(), q=search, page=query.prev_num) \
+ prev_url = url_for("packages_page", type=type_name, q=search, page=query.prev_num) \
if query.has_prev else None
tags = Tag.query.all()
return render_template("packages/list.html", title=title, packages=query.items, \
- query=search, tags=tags, type=None if type is None else type.toName(), \
+ query=search, tags=tags, type=type_name, \
next_url=next_url, prev_url=prev_url, page=page, page_max=query.pages, packages_count=query.total)