53 Commits

Author SHA1 Message Date
Georges-Antoine Assi
bddb7bd9f5
manual cleanup 2026-01-18 22:27:46 -05:00
Georges-Antoine Assi
3ccc14d4a2
add endpoints for identifiers 2026-01-18 22:17:37 -05:00
Georges-Antoine Assi
54bfb3fec5
DB functions accept list of params 2026-01-18 21:26:48 -05:00
Brandon T. Kowalski
5cb71c920f
Added updated_after query parameter for normal and smart collections and migration to add corresponding indexes to each table. 2026-01-17 23:25:02 -05:00
Georges-Antoine Assi
3965a89860
convert legacy selected_status 2026-01-14 11:05:43 -05:00
Georges-Antoine Assi
2d8444d60b
[HOTFIX] Rename selected_statuses to statuses 2026-01-14 10:07:57 -05:00
zurdi
a956008259
feat: update ROM filtering to support multi-value statuses and logic operators 2025-12-25 11:52:00 +00:00
zurdi
48d6df9cc0
feat: add logic operators for multi-value filters in collections and roms handlers 2025-12-24 15:23:44 +00:00
zurdi
ab637203ac
Merge branch 'master' into feat/rom-filter-multivalue 2025-12-24 12:39:45 +00:00
Georges-Antoine Assi
19ef2d4d5f
type ignore session and query attrs 2025-12-12 17:05:12 -05:00
zurdi
bc73f07537
Refactor: enhance filter criteria handling to support multi-value selections for genres, franchises, collections, companies, age ratings, regions, and languages 2025-11-28 22:36:21 +00:00
zurdi
92cb643405
Refactor: update filter criteria handling to support multi-value platform IDs and remove legacy conversion logic 2025-11-28 17:04:43 +00:00
zurdi
c1d43f67f8
Refactor ROM retrieval to support multi-value platform filtering across various handlers and endpoints 2025-11-27 22:52:33 +00:00
zurdi
c6717ee635
Refactor gallery filter components to use toggle buttons for filter states, allowing null values for all filters. Update filter logic in the store and API services to accommodate new states. Enhance UI for better visibility and interaction with filter options in the gallery app. 2025-11-27 12:56:01 +00:00
zurdi
d48be2f37c
Merge branch 'master' into feat/rom-filter-multivalue 2025-11-21 14:11:07 +00:00
Georges-Antoine Assi
1c84f84948
globally rename favourite to favorite 2025-10-18 14:26:20 -04:00
Georges-Antoine Assi
341332d98e
mark favorites collection explicit 2025-10-18 13:42:03 -04:00
Michael Manganiello
5a1f7d8170
feat: Initial support for multi-value ROM filters
This change converts the existing single-value ROM filter parameters
to support multiple values. Users can now filter ROMs by multiple genres,
franchises, collections, companies, age ratings, regions, and languages by
repeating the respective query parameters in API requests.

At the moment, setting multiple values for a filter will return ROMs
that match any of the provided values (logical OR). A future change can
introduce parameters like `genres_all (boolean)` to allow filtering ROMs
that match all specified values (logical AND).

The frontend has been updated to send single-value filters as arrays
to maintain compatibility with existing UI components. At the moment,
the UI does not support selecting multiple values, but this change
lays the groundwork for it.

NOTE: Breaking API change, as the filter parameters have changed names.
2025-09-09 00:21:55 -03:00
Michael Manganiello
e4e3928d1b
misc: Apply import sorting 2025-09-04 11:17:00 -03:00
Georges-Antoine Assi
898f960c96
noload rom metadata on collection 2025-08-22 09:15:03 -04:00
Georges-Antoine Assi
b26abdf9a0
noload some related tables 2025-08-21 23:59:24 -04:00
Georges-Antoine Assi
344702415f
joinedload roms on collection 2025-08-21 23:23:38 -04:00
Georges-Antoine Assi
7850cf059f
fix loading collections 2025-08-19 21:49:52 -04:00
Georges-Antoine Assi
2a8fec94e6
update smart collection model 2025-07-25 16:27:10 -04:00
Georges-Antoine Assi
f7b030ba10
get backend working sorta 2025-07-22 18:10:12 -04:00
Georges-Antoine Assi
75b8181451
start work on smart collections 2025-07-22 15:49:43 -04:00
Michael Manganiello
252722e3bc
misc: Apply pyupgrade changes for Python 3.12 compatibility
Command applied:
```
find ./backend/ -type f -name "*.py" -exec pyupgrade --py312-plus {} \;
```
2025-06-29 12:27:16 -03:00
Georges-Antoine Assi
1cb66e28ec
fix removing game from collection 2025-02-27 11:21:51 -05:00
Georges-Antoine Assi
3088e4566c
changes from self-view 2025-02-09 11:22:10 -05:00
Georges-Antoine Assi
b829a54d9f
fix trunk 2025-02-08 23:21:00 -05:00
Georges-Antoine Assi
22e0c806e1
prefetch rom collections for details 2025-01-29 10:13:02 -05:00
Georges-Antoine Assi
cd724b7d1a
migrate collections over to join table 2025-01-28 23:47:09 -05:00
Georges-Antoine Assi
60ec728e55
add option for all 2025-01-28 21:34:57 -05:00
Georges-Antoine Assi
f12ffdf685
add ui option to fetch/show virtual platforms 2025-01-28 11:10:21 -05:00
Georges-Antoine Assi
21d2ce951e
more fixes to loading games 2025-01-27 22:29:38 -05:00
Georges-Antoine Assi
5a79200617
bunch o fixes 2025-01-27 21:29:22 -05:00
Georges-Antoine Assi
10fbead892
autogenerate cover art 2025-01-27 20:26:33 -05:00
Georges-Antoine Assi
5dbc1aae0b
display virtual collections 2025-01-27 19:14:54 -05:00
Georges-Antoine Assi
dbe4b71c7a
super naive appraoch to loading virtual collections 2025-01-27 18:15:52 -05:00
Georges-Antoine Assi
9d8baef9de
small tweaks from review 2025-01-15 22:54:35 -05:00
Georges-Antoine Assi
696a1c6122
Merge branch 'master' into rom-hashing-background-task 2025-01-15 21:51:23 -05:00
Michael Manganiello
7825bce7b8
fix: Use proper JSON contains function for PostgreSQL
Fix `json_array_contains_value` function to use the `@>` operator for
checking if a JSON array contains a value in PostgreSQL. This is
necessary because the `has_key` function only works for string values.

Also, remove `get_rom_collections` method, as it was doing the same
thing as `get_collections_by_rom_id`.

Fixes #1441.
2025-01-08 21:07:01 -03:00
Georges-Antoine Assi
2e4e557eef
fixup running scans and loading 2024-12-21 12:06:37 -05:00
Georges-Antoine Assi
3fcce6606c
complete updating the endpoints and models 2024-12-20 22:41:56 -05:00
zurdi
c6039ccff4
fix: correct filter condition for retrieving collections associated with a ROM ID 2024-12-05 16:16:34 +00:00
zurdi
014427e69f
fix: update ROM deletion process to remove associated collections and streamline user data updates 2024-12-05 16:08:45 +00:00
Georges-Antoine Assi
ad3a588631
filter collections for each user 2024-07-25 19:53:44 -04:00
Georges-Antoine Assi
92b23656aa
start making collecitons public 2024-07-25 13:49:43 -04:00
Zurdi
2a7def81ac
added reactivity to collections 2024-07-03 21:58:58 +02:00
zurdi
59c2a51a6f
added collection cover management 2024-07-03 14:31:17 +02:00