fix: add adminGetVideo/adminGetArticle queries to fix 404 on edit pages
Some checks failed
Build and Push Backend Image / build (push) Successful in 43s
Build and Push Frontend Image / build (push) Has been cancelled

The edit page loaders were calling adminListVideos/adminListArticles with the
old pre-pagination signatures and filtering by ID client-side, which broke
after pagination limited results to 50. Now fetches the single item by ID
directly via new adminGetVideo and adminGetArticle backend queries.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
2026-03-07 11:05:21 +01:00
parent 6f2f3b3529
commit bff354094e
5 changed files with 129 additions and 10 deletions

View File

@@ -1339,6 +1339,51 @@ export async function adminListVideos(
});
}
const ADMIN_GET_VIDEO_QUERY = gql`
query AdminGetVideo($id: String!) {
adminGetVideo(id: $id) {
id
slug
title
description
image
movie
tags
upload_date
premium
featured
likes_count
plays_count
models {
id
artist_name
slug
avatar
}
movie_file {
id
filename
mime_type
duration
}
}
}
`;
export async function adminGetVideo(
id: string,
fetchFn?: typeof globalThis.fetch,
token?: string,
): Promise<Video | null> {
return loggedApiCall("adminGetVideo", async () => {
const client = token ? getAuthClient(token) : getGraphQLClient(fetchFn);
const data = await client.request<{ adminGetVideo: Video | null }>(ADMIN_GET_VIDEO_QUERY, {
id,
});
return data.adminGetVideo;
});
}
const CREATE_VIDEO_MUTATION = gql`
mutation CreateVideo(
$title: String!
@@ -1543,6 +1588,44 @@ export async function adminListArticles(
});
}
const ADMIN_GET_ARTICLE_QUERY = gql`
query AdminGetArticle($id: String!) {
adminGetArticle(id: $id) {
id
slug
title
excerpt
content
image
tags
publish_date
category
featured
author {
id
artist_name
slug
avatar
}
}
}
`;
export async function adminGetArticle(
id: string,
fetchFn?: typeof globalThis.fetch,
token?: string,
): Promise<Article | null> {
return loggedApiCall("adminGetArticle", async () => {
const client = token ? getAuthClient(token) : getGraphQLClient(fetchFn);
const data = await client.request<{ adminGetArticle: Article | null }>(
ADMIN_GET_ARTICLE_QUERY,
{ id },
);
return data.adminGetArticle;
});
}
const CREATE_ARTICLE_MUTATION = gql`
mutation CreateArticle(
$title: String!