summaryrefslogtreecommitdiff
path: root/packages/backend
diff options
context:
space:
mode:
authorHazelnoot <acomputerdog@gmail.com>2025-05-29 22:20:21 -0400
committerHazelnoot <acomputerdog@gmail.com>2025-05-29 22:20:21 -0400
commit979c7628b1d2b21bd9dd9d13ec0110bde883f074 (patch)
treeece2afb731c98725b8bfaa8f6eb123ef7a7d688e /packages/backend
parentimplement SkBadgeStrip (diff)
downloadsharkey-979c7628b1d2b21bd9dd9d13ec0110bde883f074.tar.gz
sharkey-979c7628b1d2b21bd9dd9d13ec0110bde883f074.tar.bz2
sharkey-979c7628b1d2b21bd9dd9d13ec0110bde883f074.zip
disable status badge strip in admin-user and instance-info
Diffstat (limited to 'packages/backend')
-rw-r--r--packages/backend/src/core/UtilityService.ts9
-rw-r--r--packages/backend/src/core/entities/InstanceEntityService.ts1
-rw-r--r--packages/backend/src/models/json-schema/federation-instance.ts4
-rw-r--r--packages/backend/src/server/api/endpoints/admin/show-user.ts6
4 files changed, 20 insertions, 0 deletions
diff --git a/packages/backend/src/core/UtilityService.ts b/packages/backend/src/core/UtilityService.ts
index 170afc72dc..ee17906d55 100644
--- a/packages/backend/src/core/UtilityService.ts
+++ b/packages/backend/src/core/UtilityService.ts
@@ -68,6 +68,15 @@ export class UtilityService {
}
@bindThis
+ public isBubbledHost(host: string | null): boolean {
+ if (host == null) return false;
+
+ // TODO remove null conditional after merging lab/persisted-instance-blocks
+ // eslint-disable-next-line @typescript-eslint/no-unnecessary-condition
+ return this.meta.bubbleInstances?.includes(host);
+ }
+
+ @bindThis
public concatNoteContentsForKeyWordCheck(content: {
cw?: string | null;
text?: string | null;
diff --git a/packages/backend/src/core/entities/InstanceEntityService.ts b/packages/backend/src/core/entities/InstanceEntityService.ts
index fcc9bed3bd..08a7765d40 100644
--- a/packages/backend/src/core/entities/InstanceEntityService.ts
+++ b/packages/backend/src/core/entities/InstanceEntityService.ts
@@ -62,6 +62,7 @@ export class InstanceEntityService {
rejectReports: instance.rejectReports,
rejectQuotes: instance.rejectQuotes,
moderationNote: iAmModerator ? instance.moderationNote : null,
+ isBubbled: this.utilityService.isBubbledHost(instance.host),
};
}
diff --git a/packages/backend/src/models/json-schema/federation-instance.ts b/packages/backend/src/models/json-schema/federation-instance.ts
index 57d4466ffa..fd6eddf594 100644
--- a/packages/backend/src/models/json-schema/federation-instance.ts
+++ b/packages/backend/src/models/json-schema/federation-instance.ts
@@ -135,5 +135,9 @@ export const packedFederationInstanceSchema = {
type: 'string',
optional: true, nullable: true,
},
+ isBubbled: {
+ type: 'boolean',
+ optional: false, nullable: false,
+ },
},
} as const;
diff --git a/packages/backend/src/server/api/endpoints/admin/show-user.ts b/packages/backend/src/server/api/endpoints/admin/show-user.ts
index 1579719246..6a77fc177f 100644
--- a/packages/backend/src/server/api/endpoints/admin/show-user.ts
+++ b/packages/backend/src/server/api/endpoints/admin/show-user.ts
@@ -122,6 +122,10 @@ export const meta = {
type: 'boolean',
optional: false, nullable: false,
},
+ isAdministrator: {
+ type: 'boolean',
+ optional: false, nullable: false,
+ },
isSystem: {
type: 'boolean',
optional: false, nullable: false,
@@ -257,6 +261,7 @@ export default class extends Endpoint<typeof meta, typeof paramDef> { // eslint-
}
const isModerator = await this.roleService.isModerator(user);
+ const isAdministrator = await this.roleService.isAdministrator(user);
const isSilenced = user.isSilenced || !(await this.roleService.getUserPolicies(user.id)).canPublicNote;
const _me = await this.usersRepository.findOneByOrFail({ id: me.id });
@@ -289,6 +294,7 @@ export default class extends Endpoint<typeof meta, typeof paramDef> { // eslint-
mutedInstances: profile.mutedInstances,
notificationRecieveConfig: profile.notificationRecieveConfig,
isModerator: isModerator,
+ isAdministrator: isAdministrator,
isSystem: isSystemAccount(user),
isSilenced: isSilenced,
isSuspended: user.isSuspended,