Skip to content

Commit

Permalink
* Make additional text work for multi video adding
Browse files Browse the repository at this point in the history
  • Loading branch information
PikachuEXE committed Apr 30, 2024
1 parent a545dd7 commit 552b912
Show file tree
Hide file tree
Showing 4 changed files with 39 additions and 2 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -69,6 +69,7 @@
:index="index"
:selected="selectedPlaylistIdList.includes(playlist._id)"
:disabled="playlistDisabled(playlist._id)"
:adding-duplicate-videos-enabled="addingDuplicateVideosEnabled"
@selected="countSelected(playlist._id)"
/>
</div>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -28,6 +28,10 @@ export default defineComponent({
type: Boolean,
required: true,
},
addingDuplicateVideosEnabled: {
type: Boolean,
required: true,
},
},
emits: ['selected'],
data: function () {
Expand Down Expand Up @@ -80,10 +84,40 @@ export default defineComponent({
count: this.loneVideoPresenceCountInPlaylist,
})
},
multiVideoPresenceCountInPlaylist() {
if (this.toBeAddedToPlaylistVideoList.length < 2) { return null }

// Count of to be added videos already present in this playlist
const v = this.toBeAddedToPlaylistVideoList.reduce((accumulator, toBeAddedToVideo) => {
return this.playlist.videos.some((pv) => pv.videoId === toBeAddedToVideo.videoId)
? accumulator + 1
: accumulator
}, 0)
// Don't display zero value
return v === 0 ? null : v
},
multiVideoPresenceCountInPlaylistText() {
if (this.multiVideoPresenceCountInPlaylist == null) { return null }

if (this.addingDuplicateVideosEnabled || this.toBeAddedToPlaylistVideoList.length === this.multiVideoPresenceCountInPlaylist) {
return this.$t('User Playlists.AddVideoPrompt.{videoCount}/{totalVideoCount} Videos Already Added', {
videoCount: this.multiVideoPresenceCountInPlaylist,
totalVideoCount: this.toBeAddedToPlaylistVideoList.length,
})
}

return this.$t('User Playlists.AddVideoPrompt.{videoCount}/{totalVideoCount} Videos Will Be Added', {
videoCount: this.toBeAddedToPlaylistVideoList.length - this.multiVideoPresenceCountInPlaylist,
totalVideoCount: this.toBeAddedToPlaylistVideoList.length,
})
},
videoPresenceCountInPlaylistText() {
return this.loneVideoPresenceCountInPlaylistText ?? this.multiVideoPresenceCountInPlaylistText
},
videoPresenceCountInPlaylistTextVisible() {
if (!this.videoPresenceCountInPlaylistTextShouldBeVisible) { return false }

return this.loneVideoPresenceCountInPlaylistText != null
return this.videoPresenceCountInPlaylistText != null
},
},
created: function () {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -45,7 +45,7 @@
v-if="videoPresenceCountInPlaylistTextVisible"
class="videoPresenceCount"
>
{{ loneVideoPresenceCountInPlaylistText }}
{{ videoPresenceCountInPlaylistText }}
</div>
</div>
</div>
Expand Down
2 changes: 2 additions & 0 deletions static/locales/en-US.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -218,6 +218,8 @@ User Playlists:
Save: Save

Added {count} Times: 'Already Added | Added {count} Times'
"{videoCount}/{totalVideoCount} Videos Will Be Added": '{videoCount}/{totalVideoCount} Videos Will Be Added'
"{videoCount}/{totalVideoCount} Videos Already Added": '{videoCount}/{totalVideoCount} Videos Already Added'

Toast:
You haven't selected any playlist yet.: You haven't selected any playlist yet.
Expand Down

0 comments on commit 552b912

Please sign in to comment.