Skip to content

Commit

Permalink
fix criterion handling for stash 0.24
Browse files Browse the repository at this point in the history
  • Loading branch information
gitgiggety committed Jan 14, 2024
1 parent 85ff74e commit 079eef8
Showing 1 changed file with 7 additions and 5 deletions.
12 changes: 7 additions & 5 deletions resources/lib/criterion_parser.py
Original file line number Diff line number Diff line change
Expand Up @@ -4,13 +4,15 @@
def parse(criterions):
filter = {}

for criterion in criterions:
if criterion in ('sceneIsMissing', 'imageIsMissing', 'performerIsMissing', 'galleryIsMissing', 'tagIsMissing', 'studioIsMissing', 'studioIsMissing'):
filter['is_missing'] = criterion['value']
for name, criterion in criterions.items():
if name in ('is_missing', 'has_markers'):
filter[name] = criterion['value']
elif name in ('organized', 'performer_favorite', 'interactive'):
filter[name] = criterion['value'] == 'true'
else:
is_timestamp_field = criterion in ('created_at', 'updated_at', 'scene_created_at', 'scene_updated_at')
is_timestamp_field = name in ('created_at', 'updated_at', 'scene_created_at', 'scene_updated_at')
value_transformer = (lambda v: v.replace(' ', 'T') if isinstance(v, str) else v) if is_timestamp_field else lambda v: v
filter[criterion] = parse_criterion(criterions[criterion], value_transformer)
filter[name] = parse_criterion(criterion, value_transformer)

return filter

Expand Down

0 comments on commit 079eef8

Please sign in to comment.