summaryrefslogtreecommitdiff
path: root/internal/typeutils/internaltofrontend.go
diff options
context:
space:
mode:
authorLibravatar tobi <31960611+tsmethurst@users.noreply.github.com>2023-10-30 19:01:00 +0100
committerLibravatar GitHub <noreply@github.com>2023-10-30 19:01:00 +0100
commitdd4b0241eaf392d4f2c8c040625c53b6997c5c3b (patch)
tree44b7109ffea76b542132768eddc516e3b520e348 /internal/typeutils/internaltofrontend.go
parent[feature] Customizable media cleaner schedule (#2304) (diff)
downloadgotosocial-dd4b0241eaf392d4f2c8c040625c53b6997c5c3b.tar.xz
[bugfix] Allow blocked accounts to show in precise search (#2321)
Diffstat (limited to 'internal/typeutils/internaltofrontend.go')
-rw-r--r--internal/typeutils/internaltofrontend.go34
1 files changed, 21 insertions, 13 deletions
diff --git a/internal/typeutils/internaltofrontend.go b/internal/typeutils/internaltofrontend.go
index d663a1237..254bf9da3 100644
--- a/internal/typeutils/internaltofrontend.go
+++ b/internal/typeutils/internaltofrontend.go
@@ -277,7 +277,7 @@ func (c *Converter) AccountToAPIAccountBlocked(ctx context.Context, a *gtsmodel.
// de-punify it just in case.
d, err := util.DePunify(a.Domain)
if err != nil {
- return nil, fmt.Errorf("AccountToAPIAccountBlocked: error de-punifying domain %s for account id %s: %w", a.Domain, a.ID, err)
+ return nil, gtserror.Newf("error de-punifying domain %s for account id %s: %w", a.Domain, a.ID, err)
}
acct = a.Username + "@" + d
@@ -288,7 +288,7 @@ func (c *Converter) AccountToAPIAccountBlocked(ctx context.Context, a *gtsmodel.
if !a.IsInstance() {
user, err := c.state.DB.GetUserByAccountID(ctx, a.ID)
if err != nil {
- return nil, fmt.Errorf("AccountToAPIAccountPublic: error getting user from database for account id %s: %w", a.ID, err)
+ return nil, gtserror.Newf("error getting user from database for account id %s: %w", a.ID, err)
}
switch {
@@ -304,17 +304,25 @@ func (c *Converter) AccountToAPIAccountBlocked(ctx context.Context, a *gtsmodel.
acct = a.Username // omit domain
}
- return &apimodel.Account{
- ID: a.ID,
- Username: a.Username,
- Acct: acct,
- DisplayName: a.DisplayName,
- Bot: *a.Bot,
- CreatedAt: util.FormatISO8601(a.CreatedAt),
- URL: a.URL,
- Suspended: !a.SuspendedAt.IsZero(),
- Role: role,
- }, nil
+ account := &apimodel.Account{
+ ID: a.ID,
+ Username: a.Username,
+ Acct: acct,
+ Bot: *a.Bot,
+ CreatedAt: util.FormatISO8601(a.CreatedAt),
+ URL: a.URL,
+ Suspended: !a.SuspendedAt.IsZero(),
+ Role: role,
+ }
+
+ // Don't show the account's actual
+ // avatar+header since it may be
+ // upsetting to the blocker. Just
+ // show generic avatar+header instead.
+ c.ensureAvatar(account)
+ c.ensureHeader(account)
+
+ return account, nil
}
func (c *Converter) AccountToAdminAPIAccount(ctx context.Context, a *gtsmodel.Account) (*apimodel.AdminAccountInfo, error) {