diff options
| author | Hunternif | 2019-05-02 03:57:31 +0700 |
|---|---|---|
| committer | Hunternif | 2019-05-02 03:57:31 +0700 |
| commit | 0b4bdc57894c885ba055aed74de8b9c94c8e2f60 (patch) | |
| tree | 4d217e71aa02fef005afe86d8845e90fe93a9f83 /server/szurubooru/api/metric_api.py | |
| parent | 82facef4aa1f1ede518acf1435d6ed98d37f8df1 (diff) | |
server: implement median for posts, for any query
Diffstat (limited to 'server/szurubooru/api/metric_api.py')
| -rw-r--r-- | server/szurubooru/api/metric_api.py | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/server/szurubooru/api/metric_api.py b/server/szurubooru/api/metric_api.py index 2b87a5d..29aa7a2 100644 --- a/server/szurubooru/api/metric_api.py +++ b/server/szurubooru/api/metric_api.py @@ -82,8 +82,13 @@ def get_post_metrics_median( query_text = ctx.get_param_as_string( 'query', default='%s:%f..%f' % (tag_name, metric.min, metric.max)) - count = _search_executor.count(query_text) - _, results = _search_executor.execute(query_text, ceil(count/2) - 1, 1) + total_count = _search_executor.count(query_text) + offset = ceil(total_count/2) - 1 + _, results = _search_executor.execute(query_text, offset, 1) return { + 'query': query_text, + 'offset': offset, + 'limit': 1, + 'total': len(results), 'results': list([_serialize_post_metric(ctx, pm) for pm in results]) } |