mirror of
https://github.com/zoriya/Kyoo.git
synced 2025-11-21 05:53:11 -05:00
Fix video controller permissions
This commit is contained in:
parent
c1b243df9c
commit
572ddc69ad
@ -54,7 +54,7 @@ PROTECTED_CLAIMS="permissions,verified"
|
|||||||
# Replace $YOURNAME with the name of the key you want (only alpha are valid)
|
# Replace $YOURNAME with the name of the key you want (only alpha are valid)
|
||||||
# The value will be the apikey (max 128 bytes)
|
# The value will be the apikey (max 128 bytes)
|
||||||
KEIBI_APIKEY_SCANNER=EJqUB8robwKwLNt37SuHqdcsNGrtwpfYxeExfiAbokpxZVd4WctWr7gnSZ
|
KEIBI_APIKEY_SCANNER=EJqUB8robwKwLNt37SuHqdcsNGrtwpfYxeExfiAbokpxZVd4WctWr7gnSZ
|
||||||
KEIBI_APIKEY_SCANNER_CLAIMS='{"permissions": ["core.write"]}'
|
KEIBI_APIKEY_SCANNER_CLAIMS='{"permissions": ["core.read", "core.write"]}'
|
||||||
|
|
||||||
# To debug the front end, you can set the following to an external backend
|
# To debug the front end, you can set the following to an external backend
|
||||||
KYOO_URL=
|
KYOO_URL=
|
||||||
|
|||||||
@ -13,8 +13,8 @@ import { series } from "./controllers/shows/series";
|
|||||||
import { showsH } from "./controllers/shows/shows";
|
import { showsH } from "./controllers/shows/shows";
|
||||||
import { staffH } from "./controllers/staff";
|
import { staffH } from "./controllers/staff";
|
||||||
import { studiosH } from "./controllers/studios";
|
import { studiosH } from "./controllers/studios";
|
||||||
import { videosH } from "./controllers/videos";
|
import { videosReadH, videosWriteH } from "./controllers/videos";
|
||||||
import type { KError } from "./models/error";
|
import { KError } from "./models/error";
|
||||||
|
|
||||||
export const base = new Elysia({ name: "base" })
|
export const base = new Elysia({ name: "base" })
|
||||||
.onError(({ code, error }) => {
|
.onError(({ code, error }) => {
|
||||||
@ -90,7 +90,8 @@ export const handlers = new Elysia({ prefix })
|
|||||||
.use(imagesH)
|
.use(imagesH)
|
||||||
.use(watchlistH)
|
.use(watchlistH)
|
||||||
.use(historyH)
|
.use(historyH)
|
||||||
.use(nextup),
|
.use(nextup)
|
||||||
|
.use(videosReadH),
|
||||||
)
|
)
|
||||||
.guard(
|
.guard(
|
||||||
{
|
{
|
||||||
@ -104,5 +105,5 @@ export const handlers = new Elysia({ prefix })
|
|||||||
// },
|
// },
|
||||||
permissions: ["core.write"],
|
permissions: ["core.write"],
|
||||||
},
|
},
|
||||||
(app) => app.use(videosH).use(seed),
|
(app) => app.use(videosWriteH).use(seed),
|
||||||
);
|
);
|
||||||
|
|||||||
@ -439,10 +439,9 @@ function getNextVideoEntry({
|
|||||||
.as("next");
|
.as("next");
|
||||||
}
|
}
|
||||||
|
|
||||||
export const videosH = new Elysia({ prefix: "/videos", tags: ["videos"] })
|
export const videosReadH = new Elysia({ prefix: "/videos", tags: ["videos"] })
|
||||||
.model({
|
.model({
|
||||||
video: Video,
|
video: Video,
|
||||||
"created-videos": t.Array(CreatedVideo),
|
|
||||||
error: t.Object({}),
|
error: t.Object({}),
|
||||||
})
|
})
|
||||||
.use(auth)
|
.use(auth)
|
||||||
@ -483,7 +482,7 @@ export const videosH = new Elysia({ prefix: "/videos", tags: ["videos"] })
|
|||||||
message: `No video found with id or slug '${id}'`,
|
message: `No video found with id or slug '${id}'`,
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
return video;
|
return video as any;
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
detail: {
|
detail: {
|
||||||
@ -806,6 +805,14 @@ export const videosH = new Elysia({ prefix: "/videos", tags: ["videos"] })
|
|||||||
},
|
},
|
||||||
},
|
},
|
||||||
)
|
)
|
||||||
|
|
||||||
|
export const videosWriteH = new Elysia({ prefix: "/videos", tags: ["videos"] })
|
||||||
|
.model({
|
||||||
|
video: Video,
|
||||||
|
"created-videos": t.Array(CreatedVideo),
|
||||||
|
error: t.Object({}),
|
||||||
|
})
|
||||||
|
.use(auth)
|
||||||
.post(
|
.post(
|
||||||
"",
|
"",
|
||||||
async ({ body, status }) => {
|
async ({ body, status }) => {
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user