fix player missing cover

This commit is contained in:
bkfox 2020-11-09 11:06:28 +01:00
parent 5dfc5e4dee
commit 5eeb55bd6b
5 changed files with 18 additions and 19 deletions

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@ -24,20 +24,20 @@ The audio player
<h4 v-if="loaded" class="title is-4"> <h4 v-if="loaded" class="title is-4">
[[ loaded.name ]] [[ loaded.name ]]
</h4> </h4>
<h4 v-else-if="live && live.current && live.current.type == 'track'" <h4 v-else-if="live && live.current && live.current.data.type == 'track'"
class="title is-4" aria-description="{% trans "Track currently on air" %}"> class="title is-4" aria-description="{% trans "Track currently on air" %}">
<span class="has-text-info is-size-3">&#9836;</span> <span class="has-text-info is-size-3">&#9836;</span>
<span>[[ current.title ]]</span> <span>[[ live.current.data.title ]]</span>
<span class="has-text-grey-dark has-text-weight-light"> <span class="has-text-grey-dark has-text-weight-light">
&mdash; [[ current.artist ]] &mdash; [[ live.current.data.artist ]]
<i v-if="current.info">([[ current.info ]])</i> <i v-if="live.current.data.info">([[ live.current.data.info ]])</i>
</span> </span>
</h4> </h4>
<div v-else-if="live && live.current && live.current.type == 'diffusion'"> <div v-else-if="live && live.current && live.current.data.type == 'diffusion'">
<h4 class="title is-4" aria-description="{% trans "Diffusion currently on air" %}"> <h4 class="title is-4" aria-description="{% trans "Diffusion currently on air" %}">
<a :href="current.url">[[ current.title ]]</a> <a :href="live.current.data.url">[[ live.current.data.title ]]</a>
</h4> </h4>
<div class="">[[ current.info ]]</div> <div class="">[[ live.current.data.info ]]</div>
</div> </div>
<h4 v-else class="title is-4" aria-description="{% trans "Currently playing" %}"> <h4 v-else class="title is-4" aria-description="{% trans "Currently playing" %}">
{{ station.name }} {{ station.name }}

View File

@ -1,4 +1,5 @@
import {setEcoTimeout} from 'public/utils'; import {setEcoTimeout} from 'public/utils';
import Model from './model';
export default class Live { export default class Live {
constructor({url,timeout=10,src=""}={}) { constructor({url,timeout=10,src=""}={}) {
@ -15,7 +16,7 @@ export default class Live {
let item = items && items[items.length-1]; let item = items && items[items.length-1];
if(item) if(item)
item.src = this.src; item.src = this.src;
return item; return item ? new Model(item) : null;
} }
//-- data refreshing //-- data refreshing

View File

@ -34,8 +34,8 @@
<span class="fas fa-play" v-else></span> <span class="fas fa-play" v-else></span>
</button> </button>
</div> </div>
<div class="media-left media-cover" v-if="current && current.cover"> <div class="media-left media-cover" v-if="current && current.data.cover">
<img :src="current.cover" class="cover" /> <img :src="current.data.cover" class="cover" />
</div> </div>
<div class="media-content"> <div class="media-content">
<slot name="content" :loaded='loaded' :live='live'></slot> <slot name="content" :loaded='loaded' :live='live'></slot>
@ -131,7 +131,7 @@ export default {
}, },
current() { current() {
return this.loaded || this.live && this.live.current; return this.loaded ? this.loaded : this.live && this.live.current;
}, },
}, },
@ -200,7 +200,6 @@ export default {
for(var s of src) { for(var s of src) {
let source = document.createElement('source'); let source = document.createElement('source');
source.setAttribute('src', s); source.setAttribute('src', s);
console.log('src', source.getAttribute('src'));
audio.appendChild(source) audio.appendChild(source)
} }
} }
@ -208,7 +207,6 @@ export default {
audio.src = src; audio.src = src;
} }
audio.load(); audio.load();
console.log(audio);
}, },
play(playlist=null, index=0) { play(playlist=null, index=0) {