Added secondary stash menu to stash heart.

This commit is contained in:
2024-07-07 21:01:44 +02:00
parent 8cada40311
commit dbc6ee0c6c
9 changed files with 171 additions and 72 deletions

View File

@@ -32,5 +32,6 @@ const { abortReason } = pageContext;
.page {
display: flex;
justify-content: center;
flex-grow: 1;
}
</style>

View File

@@ -44,7 +44,6 @@ export async function onBeforeRender(pageContext) {
},
{
entityIds: [entity.id, entity.parent?.id].filter(Boolean),
parentEntityId: entity.parent?.id,
minRatio: 1.5,
allowRandomFallback: false,
},

View File

@@ -259,6 +259,15 @@
</div>
</div>
<div
v-if="campaigns?.scene"
class="section"
>
<Campaign
:campaign="campaigns.scene"
/>
</div>
<div class="section details">
<div class="detail">
<h3 class="heading">Added</h3>
@@ -318,10 +327,11 @@ import MovieTile from '#/components/movies/tile.vue';
import SerieTile from '#/components/series/tile.vue';
import Player from '#/components/video/player.vue';
import Heart from '#/components/stashes/heart.vue';
import Campaign from '#/components/campaigns/campaign.vue';
import summaryTemplate from '#/assets/summary.yaml';
const { pageProps } = inject('pageContext');
const { pageProps, campaigns } = inject('pageContext');
const { scene } = pageProps;
const playing = ref(false);

View File

@@ -1,4 +1,6 @@
import { render } from 'vike/abort'; /* eslint-disable-line import/extensions */
import { fetchScenesById } from '#/src/scenes.js';
import { getRandomCampaigns } from '#/src/campaigns.js';
function getTitle(scene) {
if (scene.title) {
@@ -20,12 +22,27 @@ export async function onBeforeRender(pageContext) {
actorStashes: true,
});
const campaigns = await getRandomCampaigns([
{
minRatio: 1.5,
entityIds: [scene.channel.id, scene.network?.id].filter(Boolean),
allowRandomFallback: false,
},
], { tagFilter: pageContext.tagFilter });
if (!scene) {
throw render(404, `Cannot find scene '${pageContext.routeParams.sceneId}'.`);
}
return {
pageContext: {
title: getTitle(scene),
pageProps: {
scene,
},
campaigns: {
scene: campaigns[0],
},
},
};
}