Add query argument to filter by language support

This commit is contained in:
rubenwardy
2024-02-26 00:45:25 +00:00
parent 3e6d6864b3
commit 40d572d645
2 changed files with 8 additions and 1 deletions

View File

@@ -52,7 +52,8 @@ class QueryBuilder:
ret = f"{self.search} - {ret}"
if self.game:
ret = gettext("%(package_type)s for %(game_name)s", package_type=ret, game_name=self.game.title)
meta = self.game.get_translated(load_desc=False)
ret = gettext("%(package_type)s for %(game_name)s", package_type=ret, game_name=meta["title"])
return ret
@@ -132,6 +133,8 @@ class QueryBuilder:
if self.game:
self.game = Package.get_by_key(self.game)
self.has_lang = args.get("lang")
if cookies and request.cookies.get("hide_nonfree") == "1":
self.hide_nonfree = True
@@ -197,6 +200,9 @@ class QueryBuilder:
if self.game:
query = query.filter(Package.supported_games.any(game=self.game, supports=True))
if self.has_lang:
query = query.filter(Package.translations.any(language_id=self.has_lang))
for tag in self.tags:
query = query.filter(Package.tags.any(Tag.id == tag.id))