From c36f9ac37b8bbdeb4def7a20ba8ea6d6b7ad12d5 Mon Sep 17 00:00:00 2001 From: tobi <31960611+tsmethurst@users.noreply.github.com> Date: Tue, 16 Jan 2024 17:22:44 +0100 Subject: [feature] Account alias / move API + db models (#2518) * [feature] Account alias / move API + db models * go fmt * fix little cherry-pick issues * update error checking, formatting * add and use new util functions to simplify alias logic --- internal/processing/common/account.go.go | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) (limited to 'internal/processing/common') diff --git a/internal/processing/common/account.go.go b/internal/processing/common/account.go.go index 425f23483..c4436e77e 100644 --- a/internal/processing/common/account.go.go +++ b/internal/processing/common/account.go.go @@ -162,6 +162,23 @@ func (p *Processor) GetAPIAccountBlocked( return apiAccount, nil } +// GetAPIAccountSensitive fetches the "sensitive" account model for the given target. +// *BE CAREFUL!* Only return a sensitive account if targetAcc == account making the request. +func (p *Processor) GetAPIAccountSensitive( + ctx context.Context, + targetAcc *gtsmodel.Account, +) ( + apiAcc *apimodel.Account, + errWithCode gtserror.WithCode, +) { + apiAccount, err := p.converter.AccountToAPIAccountSensitive(ctx, targetAcc) + if err != nil { + err = gtserror.Newf("error converting account: %w", err) + return nil, gtserror.NewErrorInternalError(err) + } + return apiAccount, nil +} + // GetVisibleAPIAccounts converts an array of gtsmodel.Accounts (inputted by next function) into // public API model accounts, checking first for visibility. Please note that all errors will be // logged at ERROR level, but will not be returned. Callers are likely to run into show-stopping -- cgit v1.2.3