2424 parse_request_body_as ,
2525 parse_request_query_parameters_as ,
2626)
27+ from servicelib .logging_utils import log_context
2728from servicelib .rest_constants import RESPONSE_MODEL_POLICY
2829
2930from .._meta import API_VTAG
@@ -302,36 +303,39 @@ async def approve_user_account(request: web.Request) -> web.Response:
302303
303304 invitation_extras = None
304305 if approval_data .invitation :
305- _logger .debug (
306+ with log_context (
307+ _logger ,
308+ logging .DEBUG ,
306309 "User is being approved with invitation %s for user %s" ,
307310 approval_data .invitation .model_dump_json (indent = 1 ),
308311 approval_data .email ,
309- )
310-
311- # Generate invitation
312- invitation_params = ApiInvitationInputs (
313- issuer = str (req_ctx .user_id ),
314- guest = approval_data .email ,
315- trial_account_days = approval_data .invitation .trial_account_days ,
316- extra_credits_in_usd = approval_data .invitation .extra_credits_in_usd ,
317- )
312+ ):
313+ # Generate invitation
314+ invitation_params = ApiInvitationInputs (
315+ issuer = str (req_ctx .user_id ),
316+ guest = approval_data .email ,
317+ trial_account_days = approval_data .invitation .trial_account_days ,
318+ extra_credits_in_usd = approval_data .invitation .extra_credits_in_usd ,
319+ )
318320
319- invitation_result = await invitations_service .generate_invitation (
320- request .app , params = invitation_params
321- )
321+ invitation_result = await invitations_service .generate_invitation (
322+ request .app , params = invitation_params
323+ )
322324
323- assert ( # nosec
324- invitation_result .extra_credits_in_usd
325- == approval_data .invitation .extra_credits_in_usd
326- )
327- assert ( # nosec
328- invitation_result .trial_account_days
329- == approval_data .invitation .trial_account_days
330- )
331- assert invitation_result .guest == approval_data .email # nosec
325+ assert ( # nosec
326+ invitation_result .extra_credits_in_usd
327+ == approval_data .invitation .extra_credits_in_usd
328+ )
329+ assert ( # nosec
330+ invitation_result .trial_account_days
331+ == approval_data .invitation .trial_account_days
332+ )
333+ assert invitation_result .guest == approval_data .email # nosec
332334
333- # Store invitation data in extras
334- invitation_extras = {"invitation" : invitation_result .model_dump (mode = "json" )}
335+ # Store invitation data in extras
336+ invitation_extras = {
337+ "invitation" : invitation_result .model_dump (mode = "json" )
338+ }
335339
336340 # Approve the user account, passing the current user's ID as the reviewer
337341 pre_registration_id = await _users_service .approve_user_account (
@@ -343,6 +347,11 @@ async def approve_user_account(request: web.Request) -> web.Response:
343347 )
344348 assert pre_registration_id # nosec
345349
350+ if invitation_extras :
351+ _logger .debug (
352+ "Sending invitation email for user %s [STILL MISSING]" , approval_data .email
353+ )
354+
346355 return web .json_response (status = status .HTTP_204_NO_CONTENT )
347356
348357
0 commit comments