diff --git a/components/stashes/heart.vue b/components/stashes/heart.vue index f88b343..689f9e6 100644 --- a/components/stashes/heart.vue +++ b/components/stashes/heart.vue @@ -28,19 +28,37 @@ - + + + @@ -71,7 +89,7 @@ const props = defineProps({ const emit = defineEmits(['stashed', 'unstashed']); const { user, pageProps } = inject('pageContext'); -const currentStash = pageProps.stash || user?.primaryStash; +const pageStash = pageProps.stash; const itemStashes = ref(props.item.stashes); diff --git a/pages/scene/+Page.vue b/pages/scene/+Page.vue index 7322553..e1edc19 100644 --- a/pages/scene/+Page.vue +++ b/pages/scene/+Page.vue @@ -76,7 +76,7 @@ > @@ -87,12 +87,12 @@ > by @@ -371,11 +371,13 @@ const poster = computed(() => { .meta { display: flex; + height: 3.25rem; justify-content: space-between; - align-items: center; + align-items: stretch; background: var(--grey-dark-40); border-radius: 0 0 .5rem .5rem; color: var(--text-light); + overflow: hidden; } .entity { @@ -386,18 +388,23 @@ const poster = computed(() => { } .entity-link { + display: flex; + align-items: center; + box-sizing: border-box; padding: .5rem 1rem; + height: 100%; } .entity-logo { - width: 10rem; + max-width: 15rem; max-height: 100%; - object-fit: contain; } .network-container { + height: 100%; display: flex; align-items: center; + overflow: hidden; } .date { diff --git a/src/web/auth.js b/src/web/auth.js index 6ef3a49..bffd97d 100755 --- a/src/web/auth.js +++ b/src/web/auth.js @@ -2,6 +2,7 @@ import IPCIDR from 'ip-cidr'; import { login, signup } from '../auth.js'; +import { fetchUser } from '../users.js'; function getIp(req) { const ip = req.headers['x-forwarded-for']?.split(',')[0] || req.connection.remoteAddress; // See src/ws @@ -35,6 +36,15 @@ export async function setUserApi(req, res, next) { next(); } +export async function updateSessionUser(req) { + const user = await fetchUser(req.session.user.id, {}, req.session.user); + + req.session.user = user; + + req.user = user; + req.user.ip = req.userIp; +} + export async function loginApi(req, res) { const user = await login(req.body, req.userIp); diff --git a/src/web/stashes.js b/src/web/stashes.js index a747614..3fe3d00 100755 --- a/src/web/stashes.js +++ b/src/web/stashes.js @@ -10,20 +10,27 @@ import { updateStash, } from '../stashes.js'; +import { updateSessionUser } from './auth.js'; + export async function createStashApi(req, res) { const stash = await createStash(req.body, req.session.user); + await updateSessionUser(req); + res.send(stash); } export async function updateStashApi(req, res) { const stash = await updateStash(Number(req.params.stashId), req.body, req.session.user); + await updateSessionUser(req); + res.send(stash); } export async function removeStashApi(req, res) { await removeStash(Number(req.params.stashId), req.session.user); + await updateSessionUser(req); res.status(204).send(); }