diff options
Diffstat (limited to 'server/szurubooru/api/metric_api.py')
| -rw-r--r-- | server/szurubooru/api/metric_api.py | 46 |
1 files changed, 23 insertions, 23 deletions
diff --git a/server/szurubooru/api/metric_api.py b/server/szurubooru/api/metric_api.py index 29aa7a2..2bba66f 100644 --- a/server/szurubooru/api/metric_api.py +++ b/server/szurubooru/api/metric_api.py @@ -25,27 +25,27 @@ def _serialize_post_metric( def _get_metric(params: Dict[str, str]) -> model.Metric: - return metrics.get_metric_by_tag_name(params['tag_name']) + return metrics.get_metric_by_tag_name(params["tag_name"]) -@rest.routes.get('/metrics/?') +@rest.routes.get("/metrics/?") def get_metrics( ctx: rest.Context, params: Dict[str, str] = {}) -> rest.Response: - auth.verify_privilege(ctx.user, 'metrics:list') + auth.verify_privilege(ctx.user, "metrics:list") all_metrics = metrics.get_all_metrics() return { - 'results': [_serialize_metric(ctx, metric) for metric in all_metrics] + "results": [_serialize_metric(ctx, metric) for metric in all_metrics] } -@rest.routes.post('/metrics/?') +@rest.routes.post("/metrics/?") def create_metric( ctx: rest.Context, params: Dict[str, str] = {}) -> rest.Response: - auth.verify_privilege(ctx.user, 'metrics:create') - tag_name = ctx.get_param_as_string('tag_name') + auth.verify_privilege(ctx.user, "metrics:create") + tag_name = ctx.get_param_as_string("tag_name") tag = tags.get_tag_by_name(tag_name) - min = ctx.get_param_as_float('min') - max = ctx.get_param_as_float('max') + min = ctx.get_param_as_float("min") + max = ctx.get_param_as_float("max") metric = metrics.create_metric(tag, min, max) ctx.session.flush() @@ -54,41 +54,41 @@ def create_metric( return _serialize_metric(ctx, metric) -@rest.routes.delete('/metric/(?P<tag_name>.+)') +@rest.routes.delete("/metric/(?P<tag_name>.+)") def delete_metric(ctx: rest.Context, params: Dict[str, str]) -> rest.Response: metric = _get_metric(params) versions.verify_version(metric, ctx) - auth.verify_privilege(ctx.user, 'metrics:delete') + auth.verify_privilege(ctx.user, "metrics:delete") # snapshots.delete(metric, ctx.user) metrics.delete_metric(metric) ctx.session.commit() return {} -@rest.routes.get('/post-metrics/?') +@rest.routes.get("/post-metrics/?") def get_post_metrics( ctx: rest.Context, params: Dict[str, str] = {}) -> rest.Response: - auth.verify_privilege(ctx.user, 'metrics:list') + auth.verify_privilege(ctx.user, "metrics:list") return _search_executor.execute_and_serialize( ctx, lambda post_metric: _serialize_post_metric(ctx, post_metric)) -@rest.routes.get('/post-metrics/median/(?P<tag_name>.+)') +@rest.routes.get("/post-metrics/median/(?P<tag_name>.+)") def get_post_metrics_median( ctx: rest.Context, params: Dict[str, str] = {}) -> rest.Response: - auth.verify_privilege(ctx.user, 'metrics:list') + auth.verify_privilege(ctx.user, "metrics:list") metric = _get_metric(params) - tag_name = params['tag_name'] + tag_name = params["tag_name"] query_text = ctx.get_param_as_string( - 'query', - default='%s:%f..%f' % (tag_name, metric.min, metric.max)) + "query", + default="%s:%f..%f" % (tag_name, metric.min, metric.max)) 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]) + "query": query_text, + "offset": offset, + "limit": 1, + "total": len(results), + "results": list([_serialize_post_metric(ctx, pm) for pm in results]) } |