mirror of
https://github.com/advplyr/audiobookshelf-app.git
synced 2025-07-30 15:45:14 +02:00
Update collection/playlist play button to show pause when playing #1394, update collections to play local item if available
This commit is contained in:
parent
c79ecbb92e
commit
0520cbd538
33 changed files with 84 additions and 50 deletions
|
@ -6,7 +6,7 @@
|
||||||
</div>
|
</div>
|
||||||
<div class="book-table-content h-full px-2 flex items-center">
|
<div class="book-table-content h-full px-2 flex items-center">
|
||||||
<div class="max-w-full">
|
<div class="max-w-full">
|
||||||
<p class="truncate block text-sm">{{ bookTitle }}</p>
|
<p class="truncate block text-sm">{{ bookTitle }} <span v-if="localLibraryItem" class="material-icons text-success text-base align-text-bottom">download_done</span></p>
|
||||||
<p class="truncate block text-fg-muted text-xs">{{ bookAuthor }}</p>
|
<p class="truncate block text-fg-muted text-xs">{{ bookAuthor }}</p>
|
||||||
<p v-if="media.duration" class="text-xxs text-fg-muted">{{ bookDuration }}</p>
|
<p v-if="media.duration" class="text-xxs text-fg-muted">{{ bookDuration }}</p>
|
||||||
</div>
|
</div>
|
||||||
|
@ -39,6 +39,9 @@ export default {
|
||||||
libraryItemId() {
|
libraryItemId() {
|
||||||
return this.book.id
|
return this.book.id
|
||||||
},
|
},
|
||||||
|
localLibraryItem() {
|
||||||
|
return this.book.localLibraryItem
|
||||||
|
},
|
||||||
media() {
|
media() {
|
||||||
return this.book.media || {}
|
return this.book.media || {}
|
||||||
},
|
},
|
||||||
|
@ -73,18 +76,34 @@ export default {
|
||||||
showPlayBtn() {
|
showPlayBtn() {
|
||||||
return !this.isMissing && !this.isInvalid && this.tracks.length
|
return !this.isMissing && !this.isInvalid && this.tracks.length
|
||||||
},
|
},
|
||||||
isStreaming() {
|
playerIsStartingPlayback() {
|
||||||
|
// Play has been pressed and waiting for native play response
|
||||||
|
return this.$store.state.playerIsStartingPlayback
|
||||||
|
},
|
||||||
|
isOpenInPlayer() {
|
||||||
|
if (this.localLibraryItem && this.$store.getters['getIsMediaStreaming'](this.localLibraryItem.id)) return true
|
||||||
return this.$store.getters['getIsMediaStreaming'](this.libraryItemId)
|
return this.$store.getters['getIsMediaStreaming'](this.libraryItemId)
|
||||||
},
|
},
|
||||||
streamIsPlaying() {
|
streamIsPlaying() {
|
||||||
return this.$store.state.playerIsPlaying && this.isStreaming
|
return this.$store.state.playerIsPlaying && this.isOpenInPlayer
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
methods: {
|
methods: {
|
||||||
async playClick() {
|
async playClick() {
|
||||||
|
if (this.playerIsStartingPlayback) return
|
||||||
await this.$hapticsImpact()
|
await this.$hapticsImpact()
|
||||||
|
|
||||||
if (this.streamIsPlaying) {
|
if (this.streamIsPlaying) {
|
||||||
this.$eventBus.$emit('pause-item')
|
this.$eventBus.$emit('pause-item')
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
this.$store.commit('setPlayerIsStartingPlayback', this.libraryItemId)
|
||||||
|
if (this.localLibraryItem) {
|
||||||
|
this.$eventBus.$emit('play-item', {
|
||||||
|
libraryItemId: this.localLibraryItem.id,
|
||||||
|
serverLibraryItemId: this.libraryItemId
|
||||||
|
})
|
||||||
} else {
|
} else {
|
||||||
this.$eventBus.$emit('play-item', {
|
this.$eventBus.$emit('play-item', {
|
||||||
libraryItemId: this.libraryItemId
|
libraryItemId: this.libraryItemId
|
||||||
|
|
|
@ -113,12 +113,12 @@ export default {
|
||||||
showPlayBtn() {
|
showPlayBtn() {
|
||||||
return !this.isMissing && !this.isInvalid && (this.tracks.length || this.episode)
|
return !this.isMissing && !this.isInvalid && (this.tracks.length || this.episode)
|
||||||
},
|
},
|
||||||
isStreaming() {
|
isOpenInPlayer() {
|
||||||
if (this.localLibraryItem && this.localEpisode && this.$store.getters['getIsMediaStreaming'](this.localLibraryItem.id, this.localEpisode.id)) return true
|
if (this.localLibraryItem && this.localEpisode && this.$store.getters['getIsMediaStreaming'](this.localLibraryItem.id, this.localEpisode.id)) return true
|
||||||
return this.$store.getters['getIsMediaStreaming'](this.libraryItem.id, this.episodeId)
|
return this.$store.getters['getIsMediaStreaming'](this.libraryItem.id, this.episodeId)
|
||||||
},
|
},
|
||||||
streamIsPlaying() {
|
streamIsPlaying() {
|
||||||
return this.$store.state.playerIsPlaying && this.isStreaming
|
return this.$store.state.playerIsPlaying && this.isOpenInPlayer
|
||||||
},
|
},
|
||||||
playerIsStartingPlayback() {
|
playerIsStartingPlayback() {
|
||||||
// Play has been pressed and waiting for native play response
|
// Play has been pressed and waiting for native play response
|
||||||
|
|
|
@ -12,9 +12,9 @@
|
||||||
{{ collectionName }}
|
{{ collectionName }}
|
||||||
</h1>
|
</h1>
|
||||||
<div class="flex-grow" />
|
<div class="flex-grow" />
|
||||||
<ui-btn v-if="showPlayButton" :disabled="streaming" color="success" :padding-x="4" small :loading="playerIsStartingForThisMedia" class="flex items-center justify-center h-9 mr-2 w-24" @click="clickPlay">
|
<ui-btn v-if="showPlayButton" color="success" :padding-x="4" :loading="playerIsStartingForThisMedia" small class="flex items-center justify-center mx-1 w-24" @click="playClick">
|
||||||
<span v-show="!streaming" class="material-icons -ml-2 pr-1 text-white">play_arrow</span>
|
<span class="material-icons">{{ playerIsPlaying ? 'pause' : 'play_arrow' }}</span>
|
||||||
{{ streaming ? $strings.ButtonPlaying : $strings.ButtonPlay }}
|
<span class="px-1 text-sm">{{ playerIsPlaying ? $strings.ButtonPause : $strings.ButtonPlay }}</span>
|
||||||
</ui-btn>
|
</ui-btn>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
@ -47,6 +47,18 @@ export default {
|
||||||
return redirect('/bookshelf')
|
return redirect('/bookshelf')
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Lookup matching local items and attach to collection items
|
||||||
|
if (collection.books.length) {
|
||||||
|
const localLibraryItems = (await app.$db.getLocalLibraryItems('book')) || []
|
||||||
|
if (localLibraryItems.length) {
|
||||||
|
collection.books.forEach((collectionItem) => {
|
||||||
|
const matchingLocalLibraryItem = localLibraryItems.find((lli) => lli.libraryItemId === collectionItem.id)
|
||||||
|
if (!matchingLocalLibraryItem) return
|
||||||
|
collectionItem.localLibraryItem = matchingLocalLibraryItem
|
||||||
|
})
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
return {
|
return {
|
||||||
collection
|
collection
|
||||||
}
|
}
|
||||||
|
@ -70,13 +82,19 @@ export default {
|
||||||
description() {
|
description() {
|
||||||
return this.collection.description || ''
|
return this.collection.description || ''
|
||||||
},
|
},
|
||||||
playableBooks() {
|
playableItems() {
|
||||||
return this.bookItems.filter((book) => {
|
return this.bookItems.filter((book) => {
|
||||||
return !book.isMissing && !book.isInvalid && book.media.tracks.length
|
return !book.isMissing && !book.isInvalid && book.media.tracks.length
|
||||||
})
|
})
|
||||||
},
|
},
|
||||||
streaming() {
|
playerIsPlaying() {
|
||||||
return !!this.playableBooks.find((b) => this.$store.getters['getIsMediaStreaming'](b.id))
|
return this.$store.state.playerIsPlaying && this.isOpenInPlayer
|
||||||
|
},
|
||||||
|
isOpenInPlayer() {
|
||||||
|
return !!this.playableItems.find((i) => {
|
||||||
|
if (i.localLibraryItem && this.$store.getters['getIsMediaStreaming'](i.localLibraryItem.id)) return true
|
||||||
|
return this.$store.getters['getIsMediaStreaming'](i.id)
|
||||||
|
})
|
||||||
},
|
},
|
||||||
playerIsStartingPlayback() {
|
playerIsStartingPlayback() {
|
||||||
// Play has been pressed and waiting for native play response
|
// Play has been pressed and waiting for native play response
|
||||||
|
@ -88,21 +106,34 @@ export default {
|
||||||
return mediaId === this.mediaIdStartingPlayback
|
return mediaId === this.mediaIdStartingPlayback
|
||||||
},
|
},
|
||||||
showPlayButton() {
|
showPlayButton() {
|
||||||
return this.playableBooks.length
|
return this.playableItems.length
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
methods: {
|
methods: {
|
||||||
clickPlay() {
|
async playClick() {
|
||||||
if (this.playerIsStartingPlayback) return
|
if (this.playerIsStartingPlayback) return
|
||||||
|
await this.$hapticsImpact()
|
||||||
|
|
||||||
var nextBookNotRead = this.playableBooks.find((pb) => {
|
if (this.playerIsPlaying) {
|
||||||
var prog = this.$store.getters['user/getUserMediaProgress'](pb.id)
|
this.$eventBus.$emit('pause-item')
|
||||||
|
} else {
|
||||||
|
this.playNextItem()
|
||||||
|
}
|
||||||
|
},
|
||||||
|
playNextItem() {
|
||||||
|
const nextBookNotRead = this.playableItems.find((pb) => {
|
||||||
|
const prog = this.$store.getters['user/getUserMediaProgress'](pb.id)
|
||||||
return !prog?.isFinished
|
return !prog?.isFinished
|
||||||
})
|
})
|
||||||
if (nextBookNotRead) {
|
if (nextBookNotRead) {
|
||||||
this.mediaIdStartingPlayback = nextBookNotRead.id
|
this.mediaIdStartingPlayback = nextBookNotRead.id
|
||||||
this.$store.commit('setPlayerIsStartingPlayback', nextBookNotRead.id)
|
this.$store.commit('setPlayerIsStartingPlayback', nextBookNotRead.id)
|
||||||
this.$eventBus.$emit('play-item', { libraryItemId: nextBookNotRead.id })
|
|
||||||
|
if (nextBookNotRead.localLibraryItem) {
|
||||||
|
this.$eventBus.$emit('play-item', { libraryItemId: nextBookNotRead.localLibraryItem.id, serverLibraryItemId: nextBookNotRead.id })
|
||||||
|
} else {
|
||||||
|
this.$eventBus.$emit('play-item', { libraryItemId: nextBookNotRead.id })
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
|
|
@ -10,9 +10,9 @@
|
||||||
{{ playlistName }}
|
{{ playlistName }}
|
||||||
</h1>
|
</h1>
|
||||||
<div class="flex-grow" />
|
<div class="flex-grow" />
|
||||||
<ui-btn v-if="showPlayButton" :disabled="streaming" color="success" :padding-x="4" :loading="playerIsStartingForThisMedia" small class="flex items-center justify-center text-center h-9 mr-2 w-24" @click="clickPlay">
|
<ui-btn v-if="showPlayButton" color="success" :padding-x="4" :loading="playerIsStartingForThisMedia" small class="flex items-center justify-center mx-1 w-24" @click="playClick">
|
||||||
<span v-show="!streaming" class="material-icons -ml-2 pr-1 text-white">play_arrow</span>
|
<span class="material-icons">{{ playerIsPlaying ? 'pause' : 'play_arrow' }}</span>
|
||||||
{{ streaming ? $strings.ButtonPlaying : $strings.ButtonPlay }}
|
<span class="px-1 text-sm">{{ playerIsPlaying ? $strings.ButtonPause : $strings.ButtonPlay }}</span>
|
||||||
</ui-btn>
|
</ui-btn>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
@ -101,7 +101,10 @@ export default {
|
||||||
return libraryItem.media.tracks.length
|
return libraryItem.media.tracks.length
|
||||||
})
|
})
|
||||||
},
|
},
|
||||||
streaming() {
|
playerIsPlaying() {
|
||||||
|
return this.$store.state.playerIsPlaying && this.isOpenInPlayer
|
||||||
|
},
|
||||||
|
isOpenInPlayer() {
|
||||||
return !!this.playableItems.find((i) => {
|
return !!this.playableItems.find((i) => {
|
||||||
if (i.localLibraryItem && this.$store.getters['getIsMediaStreaming'](i.localLibraryItem.id, i.localEpisode?.id)) return true
|
if (i.localLibraryItem && this.$store.getters['getIsMediaStreaming'](i.localLibraryItem.id, i.localEpisode?.id)) return true
|
||||||
return this.$store.getters['getIsMediaStreaming'](i.libraryItemId, i.episodeId)
|
return this.$store.getters['getIsMediaStreaming'](i.libraryItemId, i.episodeId)
|
||||||
|
@ -126,7 +129,17 @@ export default {
|
||||||
this.selectedEpisode = playlistItem.episode
|
this.selectedEpisode = playlistItem.episode
|
||||||
this.showMoreMenu = true
|
this.showMoreMenu = true
|
||||||
},
|
},
|
||||||
clickPlay() {
|
async playClick() {
|
||||||
|
if (this.playerIsStartingPlayback) return
|
||||||
|
await this.$hapticsImpact()
|
||||||
|
|
||||||
|
if (this.playerIsPlaying) {
|
||||||
|
this.$eventBus.$emit('pause-item')
|
||||||
|
} else {
|
||||||
|
this.playNextItem()
|
||||||
|
}
|
||||||
|
},
|
||||||
|
playNextItem() {
|
||||||
const nextItem = this.playableItems.find((i) => {
|
const nextItem = this.playableItems.find((i) => {
|
||||||
const prog = this.$store.getters['user/getUserMediaProgress'](i.libraryItemId, i.episodeId)
|
const prog = this.$store.getters['user/getUserMediaProgress'](i.libraryItemId, i.episodeId)
|
||||||
return !prog?.isFinished
|
return !prog?.isFinished
|
||||||
|
|
|
@ -34,7 +34,6 @@
|
||||||
"ButtonPause": "تَوَقَّف",
|
"ButtonPause": "تَوَقَّف",
|
||||||
"ButtonPlay": "تشغيل",
|
"ButtonPlay": "تشغيل",
|
||||||
"ButtonPlayEpisode": "شغل الحلقة",
|
"ButtonPlayEpisode": "شغل الحلقة",
|
||||||
"ButtonPlaying": "مشغل الآن",
|
|
||||||
"ButtonPlaylists": "قوائم التشغيل",
|
"ButtonPlaylists": "قوائم التشغيل",
|
||||||
"ButtonRead": "اقرأ",
|
"ButtonRead": "اقرأ",
|
||||||
"ButtonReadLess": "قلص",
|
"ButtonReadLess": "قلص",
|
||||||
|
|
|
@ -29,7 +29,6 @@
|
||||||
"ButtonNextEpisode": "Наступны эпізод",
|
"ButtonNextEpisode": "Наступны эпізод",
|
||||||
"ButtonOpenFeed": "Адкрыць стужку",
|
"ButtonOpenFeed": "Адкрыць стужку",
|
||||||
"ButtonPause": "Паўза",
|
"ButtonPause": "Паўза",
|
||||||
"ButtonPlaying": "Прайграваецца",
|
|
||||||
"ButtonPlaylists": "Плэйлісты",
|
"ButtonPlaylists": "Плэйлісты",
|
||||||
"ButtonRemoveFromServer": "Выдаліць з сервера",
|
"ButtonRemoveFromServer": "Выдаліць з сервера",
|
||||||
"ButtonSave": "Захаваць",
|
"ButtonSave": "Захаваць",
|
||||||
|
|
|
@ -34,7 +34,6 @@
|
||||||
"ButtonPause": "বিরতি",
|
"ButtonPause": "বিরতি",
|
||||||
"ButtonPlay": "বাজান",
|
"ButtonPlay": "বাজান",
|
||||||
"ButtonPlayEpisode": "পর্বটি চালান",
|
"ButtonPlayEpisode": "পর্বটি চালান",
|
||||||
"ButtonPlaying": "বাজছে",
|
|
||||||
"ButtonPlaylists": "প্লেলিস্ট",
|
"ButtonPlaylists": "প্লেলিস্ট",
|
||||||
"ButtonRead": "পড়ুন",
|
"ButtonRead": "পড়ুন",
|
||||||
"ButtonReadLess": "কম পড়ুন",
|
"ButtonReadLess": "কম পড়ুন",
|
||||||
|
|
|
@ -34,7 +34,6 @@
|
||||||
"ButtonPause": "Pausa",
|
"ButtonPause": "Pausa",
|
||||||
"ButtonPlay": "Reproduir",
|
"ButtonPlay": "Reproduir",
|
||||||
"ButtonPlayEpisode": "Reproduir episodi",
|
"ButtonPlayEpisode": "Reproduir episodi",
|
||||||
"ButtonPlaying": "Reproduint",
|
|
||||||
"ButtonPlaylists": "Llistes de reproducció",
|
"ButtonPlaylists": "Llistes de reproducció",
|
||||||
"ButtonRead": "Llegir",
|
"ButtonRead": "Llegir",
|
||||||
"ButtonReadLess": "Llig menys",
|
"ButtonReadLess": "Llig menys",
|
||||||
|
|
|
@ -35,7 +35,6 @@
|
||||||
"ButtonPause": "Pozastavit",
|
"ButtonPause": "Pozastavit",
|
||||||
"ButtonPlay": "Přehrát",
|
"ButtonPlay": "Přehrát",
|
||||||
"ButtonPlayEpisode": "Přehrát epizodu",
|
"ButtonPlayEpisode": "Přehrát epizodu",
|
||||||
"ButtonPlaying": "Hraje",
|
|
||||||
"ButtonPlaylists": "Seznamy skladeb",
|
"ButtonPlaylists": "Seznamy skladeb",
|
||||||
"ButtonRead": "Číst",
|
"ButtonRead": "Číst",
|
||||||
"ButtonReadLess": "Číst méně",
|
"ButtonReadLess": "Číst méně",
|
||||||
|
|
|
@ -35,7 +35,6 @@
|
||||||
"ButtonPause": "Pause",
|
"ButtonPause": "Pause",
|
||||||
"ButtonPlay": "Afspil",
|
"ButtonPlay": "Afspil",
|
||||||
"ButtonPlayEpisode": "Afspil Afsnit",
|
"ButtonPlayEpisode": "Afspil Afsnit",
|
||||||
"ButtonPlaying": "Afspiller",
|
|
||||||
"ButtonPlaylists": "Afspilningslister",
|
"ButtonPlaylists": "Afspilningslister",
|
||||||
"ButtonRead": "Læs",
|
"ButtonRead": "Læs",
|
||||||
"ButtonReadLess": "Se mindre",
|
"ButtonReadLess": "Se mindre",
|
||||||
|
|
|
@ -35,7 +35,6 @@
|
||||||
"ButtonPause": "Pausieren",
|
"ButtonPause": "Pausieren",
|
||||||
"ButtonPlay": "Abspielen",
|
"ButtonPlay": "Abspielen",
|
||||||
"ButtonPlayEpisode": "Episode abspielen",
|
"ButtonPlayEpisode": "Episode abspielen",
|
||||||
"ButtonPlaying": "Spielt",
|
|
||||||
"ButtonPlaylists": "Wiedergabelisten",
|
"ButtonPlaylists": "Wiedergabelisten",
|
||||||
"ButtonRead": "Lesen",
|
"ButtonRead": "Lesen",
|
||||||
"ButtonReadLess": "weniger Anzeigen",
|
"ButtonReadLess": "weniger Anzeigen",
|
||||||
|
|
|
@ -35,7 +35,6 @@
|
||||||
"ButtonPause": "Pause",
|
"ButtonPause": "Pause",
|
||||||
"ButtonPlay": "Play",
|
"ButtonPlay": "Play",
|
||||||
"ButtonPlayEpisode": "Play Episode",
|
"ButtonPlayEpisode": "Play Episode",
|
||||||
"ButtonPlaying": "Playing",
|
|
||||||
"ButtonPlaylists": "Playlists",
|
"ButtonPlaylists": "Playlists",
|
||||||
"ButtonRead": "Read",
|
"ButtonRead": "Read",
|
||||||
"ButtonReadLess": "Read less",
|
"ButtonReadLess": "Read less",
|
||||||
|
|
|
@ -35,7 +35,6 @@
|
||||||
"ButtonPause": "Pausar",
|
"ButtonPause": "Pausar",
|
||||||
"ButtonPlay": "Reproducir",
|
"ButtonPlay": "Reproducir",
|
||||||
"ButtonPlayEpisode": "Reproducir episodio",
|
"ButtonPlayEpisode": "Reproducir episodio",
|
||||||
"ButtonPlaying": "Reproduciendo",
|
|
||||||
"ButtonPlaylists": "Listas de reproducción",
|
"ButtonPlaylists": "Listas de reproducción",
|
||||||
"ButtonRead": "Leer",
|
"ButtonRead": "Leer",
|
||||||
"ButtonReadLess": "Leer menos",
|
"ButtonReadLess": "Leer menos",
|
||||||
|
|
|
@ -34,7 +34,6 @@
|
||||||
"ButtonPause": "Pysäytä",
|
"ButtonPause": "Pysäytä",
|
||||||
"ButtonPlay": "Toista",
|
"ButtonPlay": "Toista",
|
||||||
"ButtonPlayEpisode": "Toista jakso",
|
"ButtonPlayEpisode": "Toista jakso",
|
||||||
"ButtonPlaying": "Toistetaan",
|
|
||||||
"ButtonPlaylists": "Soittolistat",
|
"ButtonPlaylists": "Soittolistat",
|
||||||
"ButtonRead": "Lue",
|
"ButtonRead": "Lue",
|
||||||
"ButtonReadLess": "Lue vähemmän",
|
"ButtonReadLess": "Lue vähemmän",
|
||||||
|
|
|
@ -35,7 +35,6 @@
|
||||||
"ButtonPause": "Pause",
|
"ButtonPause": "Pause",
|
||||||
"ButtonPlay": "Lire",
|
"ButtonPlay": "Lire",
|
||||||
"ButtonPlayEpisode": "Lire l’épisode",
|
"ButtonPlayEpisode": "Lire l’épisode",
|
||||||
"ButtonPlaying": "En lecture",
|
|
||||||
"ButtonPlaylists": "Listes de lecture",
|
"ButtonPlaylists": "Listes de lecture",
|
||||||
"ButtonRead": "Lire",
|
"ButtonRead": "Lire",
|
||||||
"ButtonReadLess": "Lire moins",
|
"ButtonReadLess": "Lire moins",
|
||||||
|
|
|
@ -13,7 +13,6 @@
|
||||||
"ButtonLibrary": "પુસ્તકાલય",
|
"ButtonLibrary": "પુસ્તકાલય",
|
||||||
"ButtonOpenFeed": "ફીડ ખોલો",
|
"ButtonOpenFeed": "ફીડ ખોલો",
|
||||||
"ButtonPlay": "ચલાવો",
|
"ButtonPlay": "ચલાવો",
|
||||||
"ButtonPlaying": "ચલાવી રહ્યું છે",
|
|
||||||
"ButtonPlaylists": "પ્લેલિસ્ટ",
|
"ButtonPlaylists": "પ્લેલિસ્ટ",
|
||||||
"ButtonRead": "વાંચો",
|
"ButtonRead": "વાંચો",
|
||||||
"ButtonRemove": "કાઢી નાખો",
|
"ButtonRemove": "કાઢી નાખો",
|
||||||
|
|
|
@ -27,7 +27,6 @@
|
||||||
"ButtonLibrary": "ספרייה",
|
"ButtonLibrary": "ספרייה",
|
||||||
"ButtonPlay": "נגן",
|
"ButtonPlay": "נגן",
|
||||||
"ButtonPlayEpisode": "נגן פרק",
|
"ButtonPlayEpisode": "נגן פרק",
|
||||||
"ButtonPlaying": "מנגן",
|
|
||||||
"ButtonPlaylists": "רשימת השמעה",
|
"ButtonPlaylists": "רשימת השמעה",
|
||||||
"HeaderOpenRSSFeed": "פתח ערוץ RSS",
|
"HeaderOpenRSSFeed": "פתח ערוץ RSS",
|
||||||
"LabelAddedDate": "נוסף ב-{0}"
|
"LabelAddedDate": "נוסף ב-{0}"
|
||||||
|
|
|
@ -13,7 +13,6 @@
|
||||||
"ButtonLibrary": "पुस्तकालय",
|
"ButtonLibrary": "पुस्तकालय",
|
||||||
"ButtonOpenFeed": "फ़ीड खोलें",
|
"ButtonOpenFeed": "फ़ीड खोलें",
|
||||||
"ButtonPlay": "चलाएँ",
|
"ButtonPlay": "चलाएँ",
|
||||||
"ButtonPlaying": "चल रही है",
|
|
||||||
"ButtonPlaylists": "प्लेलिस्ट्स",
|
"ButtonPlaylists": "प्लेलिस्ट्स",
|
||||||
"ButtonRead": "पढ़ लिया",
|
"ButtonRead": "पढ़ लिया",
|
||||||
"ButtonRemove": "हटाएं",
|
"ButtonRemove": "हटाएं",
|
||||||
|
|
|
@ -35,7 +35,6 @@
|
||||||
"ButtonPause": "Pauziraj",
|
"ButtonPause": "Pauziraj",
|
||||||
"ButtonPlay": "Reproduciraj",
|
"ButtonPlay": "Reproduciraj",
|
||||||
"ButtonPlayEpisode": "Reproduciraj nastavak",
|
"ButtonPlayEpisode": "Reproduciraj nastavak",
|
||||||
"ButtonPlaying": "Izvodi se",
|
|
||||||
"ButtonPlaylists": "Popisi za izvođenje",
|
"ButtonPlaylists": "Popisi za izvođenje",
|
||||||
"ButtonRead": "Pročitaj",
|
"ButtonRead": "Pročitaj",
|
||||||
"ButtonReadLess": "Pročitaj manje",
|
"ButtonReadLess": "Pročitaj manje",
|
||||||
|
|
|
@ -35,7 +35,6 @@
|
||||||
"ButtonPause": "Szünet",
|
"ButtonPause": "Szünet",
|
||||||
"ButtonPlay": "Lejátszás",
|
"ButtonPlay": "Lejátszás",
|
||||||
"ButtonPlayEpisode": "Epizód lejátszása",
|
"ButtonPlayEpisode": "Epizód lejátszása",
|
||||||
"ButtonPlaying": "Lejátszás folyamatban",
|
|
||||||
"ButtonPlaylists": "Lejátszási listák",
|
"ButtonPlaylists": "Lejátszási listák",
|
||||||
"ButtonRead": "Olvasás",
|
"ButtonRead": "Olvasás",
|
||||||
"ButtonReadLess": "Mutass kevesebbet",
|
"ButtonReadLess": "Mutass kevesebbet",
|
||||||
|
|
|
@ -35,7 +35,6 @@
|
||||||
"ButtonPause": "Pausa",
|
"ButtonPause": "Pausa",
|
||||||
"ButtonPlay": "Riproduci",
|
"ButtonPlay": "Riproduci",
|
||||||
"ButtonPlayEpisode": "Riproduci episodio",
|
"ButtonPlayEpisode": "Riproduci episodio",
|
||||||
"ButtonPlaying": "In riproduzione",
|
|
||||||
"ButtonPlaylists": "Playlist",
|
"ButtonPlaylists": "Playlist",
|
||||||
"ButtonRead": "Leggi",
|
"ButtonRead": "Leggi",
|
||||||
"ButtonReadLess": "Riduci",
|
"ButtonReadLess": "Riduci",
|
||||||
|
|
|
@ -28,7 +28,6 @@
|
||||||
"ButtonPause": "Pauzė",
|
"ButtonPause": "Pauzė",
|
||||||
"ButtonPlay": "Groti",
|
"ButtonPlay": "Groti",
|
||||||
"ButtonPlayEpisode": "Groti episodą",
|
"ButtonPlayEpisode": "Groti episodą",
|
||||||
"ButtonPlaying": "Grojama",
|
|
||||||
"ButtonPlaylists": "Grojaraščiai",
|
"ButtonPlaylists": "Grojaraščiai",
|
||||||
"ButtonRead": "Skaityti",
|
"ButtonRead": "Skaityti",
|
||||||
"ButtonReadLess": "Skaityti mažiau",
|
"ButtonReadLess": "Skaityti mažiau",
|
||||||
|
|
|
@ -34,7 +34,6 @@
|
||||||
"ButtonPause": "Pauze",
|
"ButtonPause": "Pauze",
|
||||||
"ButtonPlay": "Afspelen",
|
"ButtonPlay": "Afspelen",
|
||||||
"ButtonPlayEpisode": "Aflevering afspelen",
|
"ButtonPlayEpisode": "Aflevering afspelen",
|
||||||
"ButtonPlaying": "Speelt",
|
|
||||||
"ButtonPlaylists": "Afspeellijsten",
|
"ButtonPlaylists": "Afspeellijsten",
|
||||||
"ButtonRead": "Lees",
|
"ButtonRead": "Lees",
|
||||||
"ButtonReadLess": "Minder lezen",
|
"ButtonReadLess": "Minder lezen",
|
||||||
|
|
|
@ -31,7 +31,6 @@
|
||||||
"ButtonPause": "Pause",
|
"ButtonPause": "Pause",
|
||||||
"ButtonPlay": "Spill av",
|
"ButtonPlay": "Spill av",
|
||||||
"ButtonPlayEpisode": "Spill episode",
|
"ButtonPlayEpisode": "Spill episode",
|
||||||
"ButtonPlaying": "Spiller av",
|
|
||||||
"ButtonPlaylists": "Spillelister",
|
"ButtonPlaylists": "Spillelister",
|
||||||
"ButtonRead": "Les",
|
"ButtonRead": "Les",
|
||||||
"ButtonRemove": "Fjern",
|
"ButtonRemove": "Fjern",
|
||||||
|
|
|
@ -34,7 +34,6 @@
|
||||||
"ButtonPause": "Wstrzymaj",
|
"ButtonPause": "Wstrzymaj",
|
||||||
"ButtonPlay": "Odtwarzaj",
|
"ButtonPlay": "Odtwarzaj",
|
||||||
"ButtonPlayEpisode": "Odtwórz odcinek",
|
"ButtonPlayEpisode": "Odtwórz odcinek",
|
||||||
"ButtonPlaying": "Odtwarzane",
|
|
||||||
"ButtonPlaylists": "Listy odtwarzania",
|
"ButtonPlaylists": "Listy odtwarzania",
|
||||||
"ButtonRead": "Czytaj",
|
"ButtonRead": "Czytaj",
|
||||||
"ButtonReadLess": "Czytaj mniej",
|
"ButtonReadLess": "Czytaj mniej",
|
||||||
|
|
|
@ -34,7 +34,6 @@
|
||||||
"ButtonPause": "Pausar",
|
"ButtonPause": "Pausar",
|
||||||
"ButtonPlay": "Reproduzir",
|
"ButtonPlay": "Reproduzir",
|
||||||
"ButtonPlayEpisode": "Reproduzir Episódio",
|
"ButtonPlayEpisode": "Reproduzir Episódio",
|
||||||
"ButtonPlaying": "Reproduzindo",
|
|
||||||
"ButtonPlaylists": "Lista de Reprodução",
|
"ButtonPlaylists": "Lista de Reprodução",
|
||||||
"ButtonRead": "Ler",
|
"ButtonRead": "Ler",
|
||||||
"ButtonReadLess": "Ler menos",
|
"ButtonReadLess": "Ler menos",
|
||||||
|
|
|
@ -35,7 +35,6 @@
|
||||||
"ButtonPause": "Пауза",
|
"ButtonPause": "Пауза",
|
||||||
"ButtonPlay": "Слушать",
|
"ButtonPlay": "Слушать",
|
||||||
"ButtonPlayEpisode": "Воспроизвести эпизод",
|
"ButtonPlayEpisode": "Воспроизвести эпизод",
|
||||||
"ButtonPlaying": "Проигрывается",
|
|
||||||
"ButtonPlaylists": "Плейлисты",
|
"ButtonPlaylists": "Плейлисты",
|
||||||
"ButtonRead": "Читать",
|
"ButtonRead": "Читать",
|
||||||
"ButtonReadLess": "Читать меньше",
|
"ButtonReadLess": "Читать меньше",
|
||||||
|
|
|
@ -35,7 +35,6 @@
|
||||||
"ButtonPause": "Premor",
|
"ButtonPause": "Premor",
|
||||||
"ButtonPlay": "Predvajaj",
|
"ButtonPlay": "Predvajaj",
|
||||||
"ButtonPlayEpisode": "Predvajan epizodo",
|
"ButtonPlayEpisode": "Predvajan epizodo",
|
||||||
"ButtonPlaying": "Predvajam",
|
|
||||||
"ButtonPlaylists": "Seznami predvajanj",
|
"ButtonPlaylists": "Seznami predvajanj",
|
||||||
"ButtonRead": "Preberi",
|
"ButtonRead": "Preberi",
|
||||||
"ButtonReadLess": "Preberi manj",
|
"ButtonReadLess": "Preberi manj",
|
||||||
|
|
|
@ -35,7 +35,6 @@
|
||||||
"ButtonPause": "Pausa",
|
"ButtonPause": "Pausa",
|
||||||
"ButtonPlay": "Spela",
|
"ButtonPlay": "Spela",
|
||||||
"ButtonPlayEpisode": "Spela Episod",
|
"ButtonPlayEpisode": "Spela Episod",
|
||||||
"ButtonPlaying": "Spelar",
|
|
||||||
"ButtonPlaylists": "Spellistor",
|
"ButtonPlaylists": "Spellistor",
|
||||||
"ButtonRead": "Läs",
|
"ButtonRead": "Läs",
|
||||||
"ButtonRemove": "Ta bort",
|
"ButtonRemove": "Ta bort",
|
||||||
|
|
|
@ -35,7 +35,6 @@
|
||||||
"ButtonPause": "Призупинити",
|
"ButtonPause": "Призупинити",
|
||||||
"ButtonPlay": "Слухати",
|
"ButtonPlay": "Слухати",
|
||||||
"ButtonPlayEpisode": "Слухати епізод",
|
"ButtonPlayEpisode": "Слухати епізод",
|
||||||
"ButtonPlaying": "Відтворюється",
|
|
||||||
"ButtonPlaylists": "Списки відтворення",
|
"ButtonPlaylists": "Списки відтворення",
|
||||||
"ButtonRead": "Читати",
|
"ButtonRead": "Читати",
|
||||||
"ButtonReadLess": "Читати менше",
|
"ButtonReadLess": "Читати менше",
|
||||||
|
|
|
@ -32,7 +32,6 @@
|
||||||
"ButtonOverride": "Bỏ Qua",
|
"ButtonOverride": "Bỏ Qua",
|
||||||
"ButtonPause": "Tạm Dừng",
|
"ButtonPause": "Tạm Dừng",
|
||||||
"ButtonPlay": "Phát",
|
"ButtonPlay": "Phát",
|
||||||
"ButtonPlaying": "Đang Phát",
|
|
||||||
"ButtonPlaylists": "Danh Sách Phát",
|
"ButtonPlaylists": "Danh Sách Phát",
|
||||||
"ButtonRead": "Đọc",
|
"ButtonRead": "Đọc",
|
||||||
"ButtonRemove": "Xóa",
|
"ButtonRemove": "Xóa",
|
||||||
|
|
|
@ -35,7 +35,6 @@
|
||||||
"ButtonPause": "暂停",
|
"ButtonPause": "暂停",
|
||||||
"ButtonPlay": "播放",
|
"ButtonPlay": "播放",
|
||||||
"ButtonPlayEpisode": "播放剧集",
|
"ButtonPlayEpisode": "播放剧集",
|
||||||
"ButtonPlaying": "正在播放",
|
|
||||||
"ButtonPlaylists": "播放列表",
|
"ButtonPlaylists": "播放列表",
|
||||||
"ButtonRead": "读取",
|
"ButtonRead": "读取",
|
||||||
"ButtonReadLess": "阅读较少",
|
"ButtonReadLess": "阅读较少",
|
||||||
|
|
|
@ -34,7 +34,6 @@
|
||||||
"ButtonPause": "暫停",
|
"ButtonPause": "暫停",
|
||||||
"ButtonPlay": "播放",
|
"ButtonPlay": "播放",
|
||||||
"ButtonPlayEpisode": "播放劇集",
|
"ButtonPlayEpisode": "播放劇集",
|
||||||
"ButtonPlaying": "正在播放",
|
|
||||||
"ButtonPlaylists": "播放列表",
|
"ButtonPlaylists": "播放列表",
|
||||||
"ButtonRead": "讀取",
|
"ButtonRead": "讀取",
|
||||||
"ButtonRemove": "移除",
|
"ButtonRemove": "移除",
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue