diff --git a/src/core/Album.js b/src/core/Album.js index 52f24798..3acf85bb 100644 --- a/src/core/Album.js +++ b/src/core/Album.js @@ -1,7 +1,13 @@ const Data = require('./Data') const Image = require('./Image') +const ImageArtifactType = require('./ImageArtifactType') const {find, findOne} = require('../lib/store') +const previewTypes = [ + ImageArtifactType.MEDIUM, + ImageArtifactType.BIG, + ImageArtifactType.ORIGIN, +] const store = () => Data.getStore(Album) class Album { @@ -20,14 +26,20 @@ class Album { } } -const previewFromImage = (imgs = []) => imgs.length ? imgs[0] : null +const previewFromImage = (imgs = []) => imgs.length + ? imgs[0] + : null const processAlbum = async album => { const previewImageId = album.preview ? album.preview : previewFromImage(album.images) let preview if (previewImageId) { const image = await Image.findById(previewImageId) - preview = image.data.medium + preview = image.findArtifact(previewTypes) + } else { + preview = { + url: null, + } } return { diff --git a/src/routes/gallery.js b/src/routes/gallery.js index 6e6e85f7..874b9711 100644 --- a/src/routes/gallery.js +++ b/src/routes/gallery.js @@ -5,6 +5,10 @@ const {render} = require('../lib/render') const getPathWithNoTrailingSlash = require('../lib/url').getPathWithNoTrailingSlash const {get} = require('koa-route') +const previewUrl = preview => preview + ? preview.url + : null + function getMeta() { return { title: 'Галерея', @@ -16,7 +20,7 @@ const GItem = ({album}) => (
)