diff --git a/modules/features/profile/src/main/java/au/com/shiftyjelly/pocketcasts/profile/ProfileFragment.kt b/modules/features/profile/src/main/java/au/com/shiftyjelly/pocketcasts/profile/ProfileFragment.kt index 66897d13197..54cabec1f5a 100644 --- a/modules/features/profile/src/main/java/au/com/shiftyjelly/pocketcasts/profile/ProfileFragment.kt +++ b/modules/features/profile/src/main/java/au/com/shiftyjelly/pocketcasts/profile/ProfileFragment.kt @@ -232,6 +232,7 @@ class ProfileFragment : BaseFragment() { AppTheme(theme.activeTheme) { EndOfYearPromptCard( onClick = { + analyticsTracker.track(AnalyticsEvent.END_OF_YEAR_PROFILE_CARD_TAPPED) (activity as? FragmentHostListener)?.showStoriesOrAccount(StoriesSource.PROFILE.value) } ) diff --git a/modules/services/analytics/src/main/java/au/com/shiftyjelly/pocketcasts/analytics/AnalyticsEvent.kt b/modules/services/analytics/src/main/java/au/com/shiftyjelly/pocketcasts/analytics/AnalyticsEvent.kt index 86a19e2098e..1e932dfad3a 100644 --- a/modules/services/analytics/src/main/java/au/com/shiftyjelly/pocketcasts/analytics/AnalyticsEvent.kt +++ b/modules/services/analytics/src/main/java/au/com/shiftyjelly/pocketcasts/analytics/AnalyticsEvent.kt @@ -317,4 +317,5 @@ enum class AnalyticsEvent(val key: String) { END_OF_YEAR_STORY_SHARE("end_of_year_story_share"), END_OF_YEAR_STORY_SHARED("end_of_year_story_shared"), END_OF_YEAR_STORY_RETRY_BUTTON_TAPPED("end_of_year_story_retry_button_tapped"), + END_OF_YEAR_PROFILE_CARD_TAPPED("end_of_year_profile_card_tapped") } diff --git a/modules/services/model/src/main/java/au/com/shiftyjelly/pocketcasts/models/db/dao/PodcastDao.kt b/modules/services/model/src/main/java/au/com/shiftyjelly/pocketcasts/models/db/dao/PodcastDao.kt index 99d78ef4b57..a146f758a12 100644 --- a/modules/services/model/src/main/java/au/com/shiftyjelly/pocketcasts/models/db/dao/PodcastDao.kt +++ b/modules/services/model/src/main/java/au/com/shiftyjelly/pocketcasts/models/db/dao/PodcastDao.kt @@ -356,7 +356,7 @@ abstract class PodcastDao { JOIN podcasts ON episodes.podcast_id = podcasts.uuid WHERE episodes.last_playback_interaction_date IS NOT NULL AND episodes.last_playback_interaction_date > :fromEpochMs AND episodes.last_playback_interaction_date < :toEpochMs GROUP BY podcast_id - ORDER BY numberOfPlayedEpisodes DESC, totalPlayedTime DESC + ORDER BY totalPlayedTime DESC, numberOfPlayedEpisodes DESC LIMIT :limit """ ) diff --git a/modules/services/repositories/src/main/java/au/com/shiftyjelly/pocketcasts/repositories/endofyear/EndOfYearManagerImpl.kt b/modules/services/repositories/src/main/java/au/com/shiftyjelly/pocketcasts/repositories/endofyear/EndOfYearManagerImpl.kt index 861305d347e..a25df7f27b0 100644 --- a/modules/services/repositories/src/main/java/au/com/shiftyjelly/pocketcasts/repositories/endofyear/EndOfYearManagerImpl.kt +++ b/modules/services/repositories/src/main/java/au/com/shiftyjelly/pocketcasts/repositories/endofyear/EndOfYearManagerImpl.kt @@ -140,8 +140,7 @@ class EndOfYearManagerImpl @Inject constructor( return episodeManager.findListenedNumbers(yearStart, yearEnd) } - /* Returns top podcasts ordered by number of played episodes. If there's a tie on number of played episodes, - played time is checked. */ + /* Returns top podcasts ordered by total played time. If there's a tie on total played time, check number of played episodes. */ override suspend fun findTopPodcastsForYear(year: Int, limit: Int): List { return podcastManager.findTopPodcasts(yearStart, yearEnd, limit) }