INNER CODE UNIT · Python
may_edit_filter
skyportal/skyportal · services/assistant/app.py:418
def may_edit_filter(session, user_id, context_id):
broker_id, _, filter_id = (context_id or "").partition("/")
if not (broker_id.isdigit() and filter_id.isdigit()):
return False
user = session.scalar(sa.select(User).where(User.id == user_id))
return (
session.scalars(
Filter.select(user, mode="update").where(
Filter.id == int(filter_id), Filter.broker_id == int(broker_id)
)
).first()
is not None
)
def clear_service_tokens():
"""Drop the tokens a previous run left behind by dying mid-answer."""
session_context_id.set(uuid.uuid4().hex)