Syncing new actors to web.
This commit is contained in:
@@ -30,6 +30,7 @@ const { toBaseReleases } = require('./deep');
|
|||||||
const { associateAvatars, flushOrphanedMedia } = require('./media');
|
const { associateAvatars, flushOrphanedMedia } = require('./media');
|
||||||
const { fetchEntitiesBySlug } = require('./entities');
|
const { fetchEntitiesBySlug } = require('./entities');
|
||||||
const { deleteScenes } = require('./releases');
|
const { deleteScenes } = require('./releases');
|
||||||
|
const { updateActorSearch } = require('./update-search');
|
||||||
|
|
||||||
const actorsCommon = import('../common/actors.mjs'); // eslint-disable-line import/extensions, import/no-relative-packages
|
const actorsCommon = import('../common/actors.mjs'); // eslint-disable-line import/extensions, import/no-relative-packages
|
||||||
const geoCommon = import('../common/geo.mjs'); // eslint-disable-line import/extensions, import/no-relative-packages
|
const geoCommon = import('../common/geo.mjs'); // eslint-disable-line import/extensions, import/no-relative-packages
|
||||||
@@ -981,6 +982,7 @@ async function getOrCreateActors(baseActors, batchId) {
|
|||||||
await storeProfiles(newActorProfiles);
|
await storeProfiles(newActorProfiles);
|
||||||
|
|
||||||
if (Array.isArray(newActors)) {
|
if (Array.isArray(newActors)) {
|
||||||
|
await updateActorSearch(newActors.map((actor) => actor.id));
|
||||||
return newActors.concat(existingActors);
|
return newActors.concat(existingActors);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -6,6 +6,10 @@ const unprint = require('unprint');
|
|||||||
const knex = require('./knex');
|
const knex = require('./knex');
|
||||||
|
|
||||||
async function syncWeb(domain, ids) {
|
async function syncWeb(domain, ids) {
|
||||||
|
if (!ids || ids.length === 0) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
await knex('sync').insert({ domain, item_ids: ids });
|
await knex('sync').insert({ domain, item_ids: ids });
|
||||||
|
|
||||||
if (config.webApi.enabled) {
|
if (config.webApi.enabled) {
|
||||||
@@ -31,7 +35,14 @@ async function updateMovieSearch(releaseIds) {
|
|||||||
await syncWeb('movie', releaseIds);
|
await syncWeb('movie', releaseIds);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
async function updateActorSearch(actorIds) {
|
||||||
|
await knex.raw('REFRESH MATERIALIZED VIEW actors_meta;');
|
||||||
|
|
||||||
|
await syncWeb('actor', actorIds);
|
||||||
|
}
|
||||||
|
|
||||||
module.exports = {
|
module.exports = {
|
||||||
updateSceneSearch,
|
updateSceneSearch,
|
||||||
updateMovieSearch,
|
updateMovieSearch,
|
||||||
|
updateActorSearch,
|
||||||
};
|
};
|
||||||
|
|||||||
Reference in New Issue
Block a user