mirror of
https://github.com/captbaritone/webamp.git
synced 2026-07-28 12:36:35 +00:00
Random improvements to skins database
This commit is contained in:
parent
ec87522c51
commit
7a21513a8d
5 changed files with 38 additions and 2 deletions
|
|
@ -341,26 +341,32 @@ test("/stylegan.json", async () => {
|
|||
Array [
|
||||
Object {
|
||||
"fileName": "Zelda_Amp_3.wsz",
|
||||
"nsfw": false,
|
||||
"url": "https://cdn.webampskins.org/screenshots/48bbdbbeb03d347e59b1eebda4d352d0.png",
|
||||
},
|
||||
Object {
|
||||
"fileName": "path.wsz",
|
||||
"nsfw": false,
|
||||
"url": "https://cdn.webampskins.org/screenshots/a_fake_md5.png",
|
||||
},
|
||||
Object {
|
||||
"fileName": "nsfw.wsz",
|
||||
"nsfw": true,
|
||||
"url": "https://cdn.webampskins.org/screenshots/a_nsfw_md5.png",
|
||||
},
|
||||
Object {
|
||||
"fileName": "rejected.wsz",
|
||||
"nsfw": false,
|
||||
"url": "https://cdn.webampskins.org/screenshots/a_rejected_md5.png",
|
||||
},
|
||||
Object {
|
||||
"fileName": "tweeted.wsz",
|
||||
"nsfw": false,
|
||||
"url": "https://cdn.webampskins.org/screenshots/a_tweeted_md5.png",
|
||||
},
|
||||
Object {
|
||||
"fileName": "approved.wsz",
|
||||
"nsfw": false,
|
||||
"url": "https://cdn.webampskins.org/screenshots/an_approved_md5.png",
|
||||
},
|
||||
]
|
||||
|
|
|
|||
|
|
@ -153,6 +153,7 @@ async function getSitemapUrls() {
|
|||
|
||||
const allowList = [
|
||||
/https:\/\/skins\.webamp\.org/,
|
||||
/https:\/\/winamp-skin-museum\.pages\.dev/,
|
||||
/http:\/\/localhost:3000/,
|
||||
/netlify.app/,
|
||||
];
|
||||
|
|
|
|||
|
|
@ -139,6 +139,25 @@ router.get(
|
|||
})
|
||||
);
|
||||
|
||||
router.get(
|
||||
"/skins/:md5/metadata",
|
||||
asyncHandler(async (req, res) => {
|
||||
const { md5 } = req.params;
|
||||
const skin = await SkinModel.fromMd5(req.ctx, md5);
|
||||
if (skin == null) {
|
||||
req.log(`Details for hash "${md5}" NOT FOUND`);
|
||||
res.status(404).json();
|
||||
return;
|
||||
}
|
||||
res.json({
|
||||
md5: skin.getMd5(),
|
||||
nsfw: await skin.getIsNsfw(),
|
||||
fileName: await skin.getFileName(),
|
||||
readme: skin.getReadme(),
|
||||
});
|
||||
})
|
||||
);
|
||||
|
||||
router.get(
|
||||
"/skins/:md5/debug",
|
||||
asyncHandler(async (req, res) => {
|
||||
|
|
|
|||
|
|
@ -78,26 +78,32 @@ describe("seeded", () => {
|
|||
Array [
|
||||
Object {
|
||||
"fileName": "Zelda_Amp_3.wsz",
|
||||
"nsfw": false,
|
||||
"url": "https://cdn.webampskins.org/screenshots/48bbdbbeb03d347e59b1eebda4d352d0.png",
|
||||
},
|
||||
Object {
|
||||
"fileName": "path.wsz",
|
||||
"nsfw": false,
|
||||
"url": "https://cdn.webampskins.org/screenshots/a_fake_md5.png",
|
||||
},
|
||||
Object {
|
||||
"fileName": "nsfw.wsz",
|
||||
"nsfw": true,
|
||||
"url": "https://cdn.webampskins.org/screenshots/a_nsfw_md5.png",
|
||||
},
|
||||
Object {
|
||||
"fileName": "rejected.wsz",
|
||||
"nsfw": false,
|
||||
"url": "https://cdn.webampskins.org/screenshots/a_rejected_md5.png",
|
||||
},
|
||||
Object {
|
||||
"fileName": "tweeted.wsz",
|
||||
"nsfw": false,
|
||||
"url": "https://cdn.webampskins.org/screenshots/a_tweeted_md5.png",
|
||||
},
|
||||
Object {
|
||||
"fileName": "approved.wsz",
|
||||
"nsfw": false,
|
||||
"url": "https://cdn.webampskins.org/screenshots/an_approved_md5.png",
|
||||
},
|
||||
]
|
||||
|
|
|
|||
|
|
@ -584,16 +584,20 @@ export async function getAllClassicScreenshotUrls(): Promise<
|
|||
const skins = await knex.raw(
|
||||
`
|
||||
SELECT skins.md5,
|
||||
files.file_path
|
||||
files.file_path,
|
||||
skin_reviews.review
|
||||
FROM skins
|
||||
LEFT JOIN files ON files.skin_md5 = skins.md5
|
||||
LEFT JOIN skin_reviews ON skin_reviews.skin_md5 = skins.md5 AND skin_reviews.review = "NSFW"
|
||||
WHERE skin_type = 1
|
||||
GROUP BY skins.md5`,
|
||||
[]
|
||||
);
|
||||
|
||||
return skins.map(({ md5, file_path }) => {
|
||||
return skins.map(({ md5, file_path, review }) => {
|
||||
return {
|
||||
md5,
|
||||
nsfw: review != null,
|
||||
fileName: path.basename(file_path),
|
||||
url: getScreenshotUrl(md5),
|
||||
};
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue