42 """423 unless the caller holds the checkout on the design they name.
44 A no-op when no design is named, or when the named design cannot be found
45 (it was deleted, or the header is stale) -- an unknown design is not
46 somebody else's to protect, and 404-ing a config write on a stale header
47 would be a worse failure than allowing it.
49 doc_id = request.headers.get(DESIGN_ID_HEADER)
or request.query_params.get(DESIGN_ID_PARAM)
53 viewer = userdata.current_user(request)
55 request.headers.get(DESIGN_OWNER_HEADER)
56 or request.query_params.get(DESIGN_OWNER_PARAM)
58 owner = userdata.slug_user(named_owner)
if named_owner
else viewer
60 record = store.find_record(owner, doc_id)
66 store.claim_for_write(owner, doc_id, viewer)