mtoft20 commited on
Commit
2d44ed4
·
verified ·
1 Parent(s): e093d35

Update src/streamlit_app.py

Browse files
Files changed (1) hide show
  1. src/streamlit_app.py +8 -6
src/streamlit_app.py CHANGED
@@ -98,14 +98,16 @@ def filter_content(content_list, filters):
98
  if filters['content_type'] and content.get('type') != filters['content_type']:
99
  continue
100
 
 
 
 
 
 
 
101
  # Rating filter
102
  if filters['ratings'] and content.get('rating') not in filters['ratings']:
103
  continue
104
 
105
- # Genre filter
106
- if filters['genres'] and not any(genre.strip() in content.get('listed_in', '') for genre in filters['genres']):
107
- continue
108
-
109
  # Release year filter
110
  try:
111
  release_year = int(content.get('release_year', 0))
@@ -125,11 +127,11 @@ def filter_content(content_list, filters):
125
  continue
126
 
127
  # Director filter (optional)
128
- if filters['director'] and filters['director'].lower() not in content.get('director', '').lower():
129
  continue
130
 
131
  # Cast filter (optional)
132
- if filters['cast'] and filters['cast'].lower() not in content.get('cast', '').lower():
133
  continue
134
 
135
  filtered.append(content)
 
98
  if filters['content_type'] and content.get('type') != filters['content_type']:
99
  continue
100
 
101
+ # Genre filter - check if ALL selected genres are in the content's genres
102
+ if filters['genres']:
103
+ content_genres = [g.strip() for g in content.get('listed_in', '').split(',')]
104
+ if not all(genre in content_genres for genre in filters['genres']):
105
+ continue
106
+
107
  # Rating filter
108
  if filters['ratings'] and content.get('rating') not in filters['ratings']:
109
  continue
110
 
 
 
 
 
111
  # Release year filter
112
  try:
113
  release_year = int(content.get('release_year', 0))
 
127
  continue
128
 
129
  # Director filter (optional)
130
+ if filters['director'] and filters['director'].lower() not in (content.get('director', '') or '').lower():
131
  continue
132
 
133
  # Cast filter (optional)
134
+ if filters['cast'] and filters['cast'].lower() not in (content.get('cast', '') or '').lower():
135
  continue
136
 
137
  filtered.append(content)