summaryrefslogtreecommitdiff
path: root/packages/backend/src/core
diff options
context:
space:
mode:
Diffstat (limited to 'packages/backend/src/core')
-rw-r--r--packages/backend/src/core/NoteCreateService.ts13
-rw-r--r--packages/backend/src/core/NoteEditService.ts13
-rw-r--r--packages/backend/src/core/activitypub/models/ApImageService.ts6
-rw-r--r--packages/backend/src/core/entities/MetaEntityService.ts3
4 files changed, 23 insertions, 12 deletions
diff --git a/packages/backend/src/core/NoteCreateService.ts b/packages/backend/src/core/NoteCreateService.ts
index 2a38ed80b7..25286992d6 100644
--- a/packages/backend/src/core/NoteCreateService.ts
+++ b/packages/backend/src/core/NoteCreateService.ts
@@ -45,7 +45,6 @@ import { ApDeliverManagerService } from '@/core/activitypub/ApDeliverManagerServ
import { NoteReadService } from '@/core/NoteReadService.js';
import { RemoteUserResolveService } from '@/core/RemoteUserResolveService.js';
import { bindThis } from '@/decorators.js';
-import { DB_MAX_NOTE_TEXT_LENGTH } from '@/const.js';
import { RoleService } from '@/core/RoleService.js';
import { SearchService } from '@/core/SearchService.js';
import { FeaturedService } from '@/core/FeaturedService.js';
@@ -335,9 +334,13 @@ export class NoteCreateService implements OnApplicationShutdown {
data.localOnly = true;
}
+ const maxTextLength = user.host == null
+ ? this.config.maxNoteLength
+ : this.config.maxRemoteNoteLength;
+
if (data.text) {
- if (data.text.length > DB_MAX_NOTE_TEXT_LENGTH) {
- data.text = data.text.slice(0, DB_MAX_NOTE_TEXT_LENGTH);
+ if (data.text.length > maxTextLength) {
+ data.text = data.text.slice(0, maxTextLength);
}
data.text = data.text.trim();
if (data.text === '') {
@@ -348,8 +351,8 @@ export class NoteCreateService implements OnApplicationShutdown {
}
if (data.cw) {
- if (data.cw.length > DB_MAX_NOTE_TEXT_LENGTH) {
- data.cw = data.cw.slice(0, DB_MAX_NOTE_TEXT_LENGTH);
+ if (data.cw.length > maxTextLength) {
+ data.cw = data.cw.slice(0, maxTextLength);
}
data.cw = data.cw.trim();
if (data.cw === '') {
diff --git a/packages/backend/src/core/NoteEditService.ts b/packages/backend/src/core/NoteEditService.ts
index df45595da9..b1dd32aef8 100644
--- a/packages/backend/src/core/NoteEditService.ts
+++ b/packages/backend/src/core/NoteEditService.ts
@@ -39,7 +39,6 @@ import { ApDeliverManagerService } from '@/core/activitypub/ApDeliverManagerServ
import { NoteReadService } from '@/core/NoteReadService.js';
import { RemoteUserResolveService } from '@/core/RemoteUserResolveService.js';
import { bindThis } from '@/decorators.js';
-import { DB_MAX_NOTE_TEXT_LENGTH } from '@/const.js';
import { RoleService } from '@/core/RoleService.js';
import { SearchService } from '@/core/SearchService.js';
import { FanoutTimelineService } from '@/core/FanoutTimelineService.js';
@@ -365,9 +364,13 @@ export class NoteEditService implements OnApplicationShutdown {
data.localOnly = true;
}
+ const maxTextLength = user.host == null
+ ? this.config.maxNoteLength
+ : this.config.maxRemoteNoteLength;
+
if (data.text) {
- if (data.text.length > DB_MAX_NOTE_TEXT_LENGTH) {
- data.text = data.text.slice(0, DB_MAX_NOTE_TEXT_LENGTH);
+ if (data.text.length > maxTextLength) {
+ data.text = data.text.slice(0, maxTextLength);
}
data.text = data.text.trim();
if (data.text === '') {
@@ -378,8 +381,8 @@ export class NoteEditService implements OnApplicationShutdown {
}
if (data.cw) {
- if (data.cw.length > DB_MAX_NOTE_TEXT_LENGTH) {
- data.cw = data.cw.slice(0, DB_MAX_NOTE_TEXT_LENGTH);
+ if (data.cw.length > maxTextLength) {
+ data.cw = data.cw.slice(0, maxTextLength);
}
data.cw = data.cw.trim();
if (data.cw === '') {
diff --git a/packages/backend/src/core/activitypub/models/ApImageService.ts b/packages/backend/src/core/activitypub/models/ApImageService.ts
index ba9f41ca24..259889d945 100644
--- a/packages/backend/src/core/activitypub/models/ApImageService.ts
+++ b/packages/backend/src/core/activitypub/models/ApImageService.ts
@@ -9,12 +9,12 @@ import type { DriveFilesRepository, MiMeta } from '@/models/_.js';
import type { MiRemoteUser } from '@/models/User.js';
import type { MiDriveFile } from '@/models/DriveFile.js';
import { truncate } from '@/misc/truncate.js';
-import { DB_MAX_IMAGE_COMMENT_LENGTH } from '@/const.js';
import { DriveService } from '@/core/DriveService.js';
import type Logger from '@/logger.js';
import { bindThis } from '@/decorators.js';
import { checkHttps } from '@/misc/check-https.js';
import { FederatedInstanceService } from '@/core/FederatedInstanceService.js';
+import type { Config } from '@/config.js';
import { ApResolverService } from '../ApResolverService.js';
import { ApLoggerService } from '../ApLoggerService.js';
import { isDocument, type IObject } from '../type.js';
@@ -29,6 +29,8 @@ export class ApImageService {
@Inject(DI.driveFilesRepository)
private driveFilesRepository: DriveFilesRepository,
+ @Inject(DI.config)
+ private config: Config,
private apResolverService: ApResolverService,
private driveService: DriveService,
@@ -83,7 +85,7 @@ export class ApImageService {
uri: image.url,
sensitive: !!(image.sensitive),
isLink: !shouldBeCached,
- comment: truncate(image.name ?? undefined, DB_MAX_IMAGE_COMMENT_LENGTH),
+ comment: truncate(image.name ?? undefined, this.config.maxRemoteAltTextLength),
});
if (!file.isLink || file.url === image.url) return file;
diff --git a/packages/backend/src/core/entities/MetaEntityService.ts b/packages/backend/src/core/entities/MetaEntityService.ts
index 61655c9652..a94b3ae290 100644
--- a/packages/backend/src/core/entities/MetaEntityService.ts
+++ b/packages/backend/src/core/entities/MetaEntityService.ts
@@ -110,6 +110,9 @@ export class MetaEntityService {
backgroundImageUrl: instance.backgroundImageUrl,
logoImageUrl: instance.logoImageUrl,
maxNoteTextLength: this.config.maxNoteLength,
+ maxRemoteNoteTextLength: this.config.maxRemoteNoteLength,
+ maxAltTextLength: this.config.maxAltTextLength,
+ maxRemoteAltTextLength: this.config.maxRemoteAltTextLength,
defaultLightTheme,
defaultDarkTheme,
defaultLike: instance.defaultLike,