Skip to content

Commit 8385e14

Browse files
committed
Small tweaks
- improve logging - save heavy DB query - prefer dataclasses over strings
1 parent 26a3f6d commit 8385e14

3 files changed

Lines changed: 6 additions & 5 deletions

File tree

server/mergin/sync/public_api_controller.py

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -608,8 +608,9 @@ def get_paginated_projects(
608608
public,
609609
only_public,
610610
)
611-
result = projects.paginate(page, per_page).items
612-
total = projects.paginate().total
611+
pagination = projects.paginate(page, per_page)
612+
result = pagination.items
613+
total = pagination.total
613614

614615
# create user map id:username passed to project schema to minimize queries to db
615616
projects_ids = [p.id for p in result]

server/mergin/sync/public_api_v2_controller.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -428,12 +428,12 @@ def list_workspace_projects(workspace_id, page, per_page, order_params=None, q=N
428428
if not (ws and ws.is_active):
429429
abort(404, "Workspace not found")
430430

431-
if ws.user_has_permissions(current_user, "read"):
431+
if ws.user_has_permissions(current_user, WorkspaceRole.READER.value):
432432
# regular members can list all projects
433433
projects = Project.query.filter_by(workspace_id=ws.id).filter(
434434
Project.removed_at.is_(None)
435435
)
436-
elif ws.user_has_permissions(current_user, "guest"):
436+
elif ws.user_has_permissions(current_user, WorkspaceRole.GUEST.value):
437437
# guest can list only explicitly shared projects
438438
projects = projects_query(
439439
ProjectPermissions.Read, as_admin=False, public=False

server/mergin/utils.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -60,7 +60,7 @@ def get_order_param(
6060
attr = None
6161
order_attr = cls.__table__.c.get(col, None)
6262
if not isinstance(order_attr, Column):
63-
logging.warning("Ignoring invalid order parameter.")
63+
logging.warning(f"Ignoring invalid order parameter: {order_param}.")
6464
return
6565
# sort by key in JSON field
6666
if attr:

0 commit comments

Comments
 (0)