@@ -161,6 +161,8 @@ accountAPI =
161
161
:<|> Named @ " createUserNoVerifySpar" (callsFed (exposeAnnotations createUserNoVerifySpar))
162
162
:<|> Named @ " putSelfEmail" changeSelfEmailMaybeSendH
163
163
:<|> Named @ " iDeleteUser" deleteUserNoAuthH
164
+ :<|> Named @ " iPutUserStatus" changeAccountStatusH
165
+ :<|> Named @ " iGetUserStatus" getAccountStatusH
164
166
165
167
teamsAPI :: ServerT BrigIRoutes. TeamsAPI (Handler r )
166
168
teamsAPI = Named @ " updateSearchVisibilityInbound" Index. updateSearchVisibilityInbound
@@ -314,14 +316,6 @@ sitemap = unsafeCallsFed @'Brig @"on-user-deleted-connections" $ do
314
316
.&. (param " email" ||| param " phone" )
315
317
.&. def False (query " includePendingInvitations" )
316
318
317
- put " /i/users/:uid/status" (continue changeAccountStatusH) $
318
- capture " uid"
319
- .&. jsonRequest @ AccountStatusUpdate
320
-
321
- get " /i/users/:uid/status" (continue getAccountStatusH) $
322
- accept " application" " json"
323
- .&. capture " uid"
324
-
325
319
get " /i/users/:uid/contacts" (continue getContactListH) $
326
320
accept " application" " json"
327
321
.&. capture " uid"
@@ -626,18 +620,18 @@ newtype GetPasswordResetCodeResp = GetPasswordResetCodeResp (PasswordResetKey, P
626
620
instance ToJSON GetPasswordResetCodeResp where
627
621
toJSON (GetPasswordResetCodeResp (k, c)) = object [" key" .= k, " code" .= c]
628
622
629
- changeAccountStatusH :: UserId ::: JsonRequest AccountStatusUpdate -> (Handler r ) Response
630
- changeAccountStatusH ( usr ::: req ) = do
631
- status <- suStatus <$> parseJsonBody req
632
- wrapHttpClientE ( API. changeSingleAccountStatus usr status) !>> accountStatusError
633
- pure empty
634
-
635
- getAccountStatusH :: JSON ::: UserId -> ( Handler r ) Response
636
- getAccountStatusH (_ ::: usr) = do
637
- status <- lift $ wrapClient $ API. lookupStatus usr
638
- pure $ case status of
639
- Just s -> json $ AccountStatusResp s
640
- Nothing -> setStatus status404 empty
623
+ changeAccountStatusH :: UserId -> AccountStatusUpdate -> (Handler r ) NoContent
624
+ changeAccountStatusH usr (suStatus -> status ) = do
625
+ wrapHttpClientE ( API. changeSingleAccountStatus usr status) !>> accountStatusError -- FUTUREWORK: use CanThrow and related machinery
626
+ pure NoContent
627
+
628
+ getAccountStatusH :: UserId -> ( Handler r ) AccountStatusResp
629
+ getAccountStatusH uid = do
630
+ status <- lift $ wrapClient $ API. lookupStatus uid
631
+ maybe
632
+ (throwStd (errorToWai @ 'E. UserNotFound ))
633
+ ( pure . AccountStatusResp )
634
+ status
641
635
642
636
getConnectionsStatusUnqualified :: ConnectionsStatusRequest -> Maybe Relation -> (Handler r ) [ConnectionStatus ]
643
637
getConnectionsStatusUnqualified ConnectionsStatusRequest {csrFrom, csrTo} flt = lift $ do
0 commit comments