Merge branch '461-add-duration-track-table' into 'develop'

Resolve "Display track length in track lists (album view for instance)"

Closes #461

See merge request funkwhale/funkwhale!363
This commit is contained in:
Eliot Berriot 2018-07-30 16:28:25 +00:00
commit 761433e3f9
3 changed files with 22 additions and 4 deletions

View File

@ -0,0 +1 @@
Display track duration in track tables (#461)

View File

@ -15,7 +15,7 @@
{{ track.title }} {{ track.title }}
</router-link> </router-link>
</td> </td>
<td colspan="6"> <td colspan="4">
<router-link v-if="track.artist.id === albumArtist.id" class="artist discrete link" :to="{name: 'library.artists.detail', params: {id: track.artist.id }}"> <router-link v-if="track.artist.id === albumArtist.id" class="artist discrete link" :to="{name: 'library.artists.detail', params: {id: track.artist.id }}">
{{ track.artist.name }} {{ track.artist.name }}
</router-link> </router-link>
@ -29,11 +29,17 @@
</router-link> </router-link>
</template> </template>
</td> </td>
<td colspan="6"> <td colspan="4">
<router-link class="album discrete link" :to="{name: 'library.albums.detail', params: {id: track.album.id }}"> <router-link class="album discrete link" :to="{name: 'library.albums.detail', params: {id: track.album.id }}">
{{ track.album.title }} {{ track.album.title }}
</router-link> </router-link>
</td> </td>
<td colspan="4" v-if="file && file.duration">
{{ time.parse(file.duration) }}
</td>
<td colspan="4" v-else>
<translate>N/A</translate>
</td>
<td> <td>
<track-favorite-icon class="favorite-icon" :track="track"></track-favorite-icon> <track-favorite-icon class="favorite-icon" :track="track"></track-favorite-icon>
<track-playlist-icon <track-playlist-icon
@ -44,6 +50,8 @@
</template> </template>
<script> <script>
import time from '@/utils/time'
import TrackFavoriteIcon from '@/components/favorites/TrackFavoriteIcon' import TrackFavoriteIcon from '@/components/favorites/TrackFavoriteIcon'
import TrackPlaylistIcon from '@/components/playlists/TrackPlaylistIcon' import TrackPlaylistIcon from '@/components/playlists/TrackPlaylistIcon'
import PlayButton from '@/components/audio/PlayButton' import PlayButton from '@/components/audio/PlayButton'
@ -59,6 +67,11 @@ export default {
TrackPlaylistIcon, TrackPlaylistIcon,
PlayButton PlayButton
}, },
data () {
return {
time
}
},
computed: { computed: {
albumArtist () { albumArtist () {
if (this.artist) { if (this.artist) {
@ -66,6 +79,9 @@ export default {
} else { } else {
return this.track.album.artist return this.track.album.artist
} }
},
file () {
return this.track.files[0]
} }
} }
} }

View File

@ -5,8 +5,9 @@
<th></th> <th></th>
<th></th> <th></th>
<th colspan="6"><translate>Title</translate></th> <th colspan="6"><translate>Title</translate></th>
<th colspan="6"><translate>Artist</translate></th> <th colspan="4"><translate>Artist</translate></th>
<th colspan="6"><translate>Album</translate></th> <th colspan="4"><translate>Album</translate></th>
<th colspan="4"><translate>Duration</translate></th>
<th></th> <th></th>
</tr> </tr>
</thead> </thead>