Changed release media association existence check, added log for details.

This commit is contained in:
DebaucheryLibrarian 2022-01-28 04:05:29 +01:00
parent 8cdc794a3a
commit 90bc2f3724
3 changed files with 18 additions and 8 deletions

View File

@ -17,10 +17,11 @@
"vue/html-indent": ["error", "tab"], "vue/html-indent": ["error", "tab"],
"vue/multiline-html-element-content-newline": 0, "vue/multiline-html-element-content-newline": 0,
"vue/singleline-html-element-content-newline": 0, "vue/singleline-html-element-content-newline": 0,
"vue/multi-word-component-names": 0,
"no-param-reassign": ["error", { "no-param-reassign": ["error", {
"props": true, "props": true,
"ignorePropertyModificationsFor": ["state", "acc"] "ignorePropertyModificationsFor": ["state", "acc"]
}], }]
}, },
"globals": { "globals": {
"CONFIG": true "CONFIG": true

View File

@ -153,8 +153,8 @@ async function fetchEntity(scroll = true) {
this.pageTitle = entity.name; this.pageTitle = entity.name;
const campaign = entity.campaigns.find(campaignX => !campaignX.banner) const campaign = entity.campaigns.find((campaignX) => !campaignX.banner)
|| entity.parent?.campaigns.find(campaignX => !campaignX.banner); || entity.parent?.campaigns.find((campaignX) => !campaignX.banner);
const affiliateParams = new URLSearchParams({ const affiliateParams = new URLSearchParams({
...(entity.url && Object.fromEntries(new URL(entity.url).searchParams)), // preserve any query in entity URL, e.g. ?siteId=5 ...(entity.url && Object.fromEntries(new URL(entity.url).searchParams)), // preserve any query in entity URL, e.g. ?siteId=5

View File

@ -826,11 +826,12 @@ async function associateReleaseMedia(releases, type = 'release') {
.reduce((acc, [releaseId, releaseBaseMedias]) => { .reduce((acc, [releaseId, releaseBaseMedias]) => {
releaseBaseMedias.forEach((baseMedia) => { releaseBaseMedias.forEach((baseMedia) => {
const media = storedMediasById[baseMedia.id]; const media = storedMediasById[baseMedia.id];
const mediaId = media?.use || media?.entry?.id;
if (media) { if (mediaId) {
acc.push({ acc.push({
[`${type}_id`]: releaseId, [`${type}_id`]: releaseId,
media_id: media.use || media.entry.id, media_id: mediaId,
}); });
} }
}); });
@ -839,11 +840,19 @@ async function associateReleaseMedia(releases, type = 'release') {
}, []) }, [])
.filter(Boolean); .filter(Boolean);
try {
if (associations.length > 0) { if (associations.length > 0) {
await bulkInsert(`${type}s_${role}`, associations, false); await bulkInsert(`${type}s_${role}`, associations, false);
} }
} catch (error) { } catch (error) {
console.log(associations);
throw error;
}
} catch (error) {
if (error.entries) {
logger.error(util.inspect(error.entries, null, null, { color: true })); logger.error(util.inspect(error.entries, null, null, { color: true }));
}
logger.error(`Failed to store ${type} ${role}: ${error.message}`); logger.error(`Failed to store ${type} ${role}: ${error.message}`);
} }
}, Promise.resolve()); }, Promise.resolve());