From 1cf9be81860770fa91b3bde2eaf11a7183db4cfe Mon Sep 17 00:00:00 2001 From: Nassim Jahnke Date: Tue, 3 Jan 2023 14:25:29 +0100 Subject: [PATCH] Get max sponsors length from backenddata --- .../java/io/papermc/hangar/config/hangar/ProjectsConfig.java | 4 ++++ .../hangar/model/internal/api/responses/Validations.java | 2 ++ frontend/src/pages/[user]/[project]/index.vue | 3 ++- frontend/src/types/api.d.ts | 1 + 4 files changed, 9 insertions(+), 1 deletion(-) diff --git a/backend/src/main/java/io/papermc/hangar/config/hangar/ProjectsConfig.java b/backend/src/main/java/io/papermc/hangar/config/hangar/ProjectsConfig.java index c11d77f67..bf21a2fad 100644 --- a/backend/src/main/java/io/papermc/hangar/config/hangar/ProjectsConfig.java +++ b/backend/src/main/java/io/papermc/hangar/config/hangar/ProjectsConfig.java @@ -54,4 +54,8 @@ public record ProjectsConfig( // TODO split into ProjectsConfig and VersionsConf public Validation versionName() { return new Validation(this.versionNameRegex(), this.maxVersionNameLen(), null); } + + public Validation sponsorsContent() { + return Validation.max(this.maxSponsorsLen()); + } } diff --git a/backend/src/main/java/io/papermc/hangar/model/internal/api/responses/Validations.java b/backend/src/main/java/io/papermc/hangar/model/internal/api/responses/Validations.java index edb163ce2..b764934fe 100644 --- a/backend/src/main/java/io/papermc/hangar/model/internal/api/responses/Validations.java +++ b/backend/src/main/java/io/papermc/hangar/model/internal/api/responses/Validations.java @@ -22,6 +22,7 @@ public record Validations( Validation channels, Validation pageName, Validation pageContent, + Validation sponsorsContent, int maxPageCount, int maxChannelCount ) { @@ -36,6 +37,7 @@ public record Validations( config.channels.channelName(), config.pages.pageName(), config.pages.pageContent(), + config.projects.sponsorsContent(), config.projects.maxPages(), config.projects.maxChannels() ); diff --git a/frontend/src/pages/[user]/[project]/index.vue b/frontend/src/pages/[user]/[project]/index.vue index 3f984ec1c..30f965e5a 100644 --- a/frontend/src/pages/[user]/[project]/index.vue +++ b/frontend/src/pages/[user]/[project]/index.vue @@ -19,6 +19,7 @@ import PlatformLogo from "~/components/logos/platforms/PlatformLogo.vue"; import DownloadButton from "~/components/projects/DownloadButton.vue"; import { useOpenProjectPages } from "~/composables/useOpenProjectPages"; import ProjectPageMarkdown from "~/components/projects/ProjectPageMarkdown.vue"; +import { useBackendData } from "~/store/backendData"; const props = defineProps<{ user: User; @@ -77,7 +78,7 @@ function createPinnedVersionUrl(version: PinnedVersion): string { :deletable="false" :saveable="true" :cancellable="true" - :maxlength="500" + :maxlength="useBackendData.validations.project.sponsorsContent.max" :title="i18n.t('project.sponsors')" class="pt-0 mr-4" @save="saveSponsors" diff --git a/frontend/src/types/api.d.ts b/frontend/src/types/api.d.ts index 742c43d75..be0faa286 100644 --- a/frontend/src/types/api.d.ts +++ b/frontend/src/types/api.d.ts @@ -56,6 +56,7 @@ declare module "hangar-api" { channels: Validation; pageName: Validation; pageContent: Validation; + sponsorsContent: Validation; maxPageCount: number; maxChannelCount: number; };