Add prop for default cover
This commit is contained in:
parent
8fd0f8991a
commit
804f9a7d99
|
@ -0,0 +1 @@
|
||||||
|
Changed default behaviour of channel entries to use channel artwork if no entry artwork available (#1289)
|
|
@ -5,7 +5,7 @@
|
||||||
<div v-if="isLoading" class="ui inverted active dimmer">
|
<div v-if="isLoading" class="ui inverted active dimmer">
|
||||||
<div class="ui loader"></div>
|
<div class="ui loader"></div>
|
||||||
</div>
|
</div>
|
||||||
<channel-entry-card v-for="entry in objects" :entry="entry" :key="entry.id" />
|
<channel-entry-card v-for="entry in objects" :default-cover="defaultCover" :entry="entry" :key="entry.id" />
|
||||||
<template v-if="count > limit">
|
<template v-if="count > limit">
|
||||||
<div class="ui hidden divider"></div>
|
<div class="ui hidden divider"></div>
|
||||||
<div class = "ui center aligned basic segment">
|
<div class = "ui center aligned basic segment">
|
||||||
|
@ -38,6 +38,7 @@ export default {
|
||||||
props: {
|
props: {
|
||||||
filters: {type: Object, required: true},
|
filters: {type: Object, required: true},
|
||||||
limit: {type: Number, default: 10},
|
limit: {type: Number, default: 10},
|
||||||
|
defaultCover: {type: Object},
|
||||||
},
|
},
|
||||||
components: {
|
components: {
|
||||||
ChannelEntryCard,
|
ChannelEntryCard,
|
||||||
|
|
|
@ -9,10 +9,11 @@
|
||||||
class="channel-image image"
|
class="channel-image image"
|
||||||
v-if="cover && cover.urls.original"
|
v-if="cover && cover.urls.original"
|
||||||
v-lazy="$store.getters['instance/absoluteUrl'](cover.urls.medium_square_crop)">
|
v-lazy="$store.getters['instance/absoluteUrl'](cover.urls.medium_square_crop)">
|
||||||
<span
|
<img
|
||||||
@click="$router.push({name: 'library.tracks.detail', params: {id: entry.id}})"
|
@click="$router.push({name: 'library.tracks.detail', params: {id: entry.id}})"
|
||||||
class="channel-image image"
|
class="channel-image image"
|
||||||
v-else-if="entry.artist.content_category === 'podcast'">#{{ entry.position }}</span>
|
v-else-if="entry.artist.content_category === 'podcast' && defaultCover != undefined"
|
||||||
|
v-lazy="$store.getters['instance/absoluteUrl'](defaultCover.urls.medium_square_crop)">
|
||||||
<img
|
<img
|
||||||
@click="$router.push({name: 'library.tracks.detail', params: {id: entry.id}})"
|
@click="$router.push({name: 'library.tracks.detail', params: {id: entry.id}})"
|
||||||
alt=""
|
alt=""
|
||||||
|
@ -53,7 +54,7 @@ import { mapGetters } from "vuex"
|
||||||
|
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
props: ['entry'],
|
props: ['entry', 'defaultCover'],
|
||||||
components: {
|
components: {
|
||||||
PlayButton,
|
PlayButton,
|
||||||
TrackFavoriteIcon,
|
TrackFavoriteIcon,
|
||||||
|
|
|
@ -49,7 +49,7 @@
|
||||||
:can-update="false"></rendered-description>
|
:can-update="false"></rendered-description>
|
||||||
<div class="ui hidden divider"></div>
|
<div class="ui hidden divider"></div>
|
||||||
</div>
|
</div>
|
||||||
<channel-entries :key="String(episodesKey) + 'entries'" :limit='25' :filters="{channel: object.uuid, ordering: '-creation_date', page_size: '25'}">
|
<channel-entries :key="String(episodesKey) + 'entries'" :default-cover='object.artist.cover' :limit='25' :filters="{channel: object.uuid, ordering: '-creation_date', page_size: '25'}">
|
||||||
<h2 class="ui header">
|
<h2 class="ui header">
|
||||||
<translate key="1" v-if="isPodcast" translate-context="Content/Channel/Paragraph">Latest episodes</translate>
|
<translate key="1" v-if="isPodcast" translate-context="Content/Channel/Paragraph">Latest episodes</translate>
|
||||||
<translate key="2" v-else translate-context="Content/Channel/Paragraph">Latest tracks</translate>
|
<translate key="2" v-else translate-context="Content/Channel/Paragraph">Latest tracks</translate>
|
||||||
|
|
Loading…
Reference in New Issue