[PR #2717] feat: Add Seasons UI to Podcast Page #3778

Open
opened 2026-04-25 00:17:02 +02:00 by adam · 0 comments
Owner

📋 Pull Request Information

Original PR: https://github.com/advplyr/audiobookshelf/pull/2717
Author: @mfcar
Created: 3/6/2024
Status: 🔄 Open

Base: masterHead: mf/podcastSeason


📝 Commits (5)

  • 090ba90 Add season filter
  • 2f97499 Show the filter control only for the serial podcast type
  • 0ced072 Format the season group and add strings
  • a4d3dfa Add expand/collapse option
  • 6f58f3f Add episodesSorted watch item

📊 Changes

2 files changed (+109 additions, -8 deletions)

View changed files

📝 client/components/tables/podcast/LazyEpisodesTable.vue (+106 -7)
📝 client/strings/en-us.json (+3 -1)

📄 Description

This PR updates the interface for a podcast when the type is set to 'serial'.

When a podcast is of the 'serial' type, some changes are made on the page:

  • A new dropdown is displayed to filter by a specific season.
  • All the seasons are grouped in collapse/expand groups.
  • The initial state for the collapse/expand groups is closed, but the most recent season is displayed as open initially.
  • The number of episodes is shown on each group header.
  • Filters for episode status (complete, in progress, and incomplete) are functional.
  • In the grouping, if an episode doesn't contain the season information, it will be grouped under an 'unknown' season.
  • Two new phrases have been added for use in the season dropdown filter:
    • "LabelAllSeasons": "All Seasons"
    • "LabelSeasonUnknown": "Season Unknown"

Screenshots:

Screenshot 2024-03-06 at 16 27 32

Serial (seasons) vs Episodic UI

Demo

https://github.com/advplyr/audiobookshelf/assets/814828/92ea31d6-c538-4ba0-a9cb-621c6188e651


Known issues

Before removing the draft status, there are two known issues that I am trying to understand:

  • The first issue is related to lazy loading. Occasionally, the episodes listing starts to behave erratically and does not load properly. Additionally, the most recent episode of the first season consistently appears as blank.

https://github.com/advplyr/audiobookshelf/assets/814828/1e7f999d-9876-4e32-8ea6-ca485707a43f


  • The second issue is associated with sorting. While changing the sorting criteria (for example, from Title to PubDate) works as expected, changing the direction of a sort item results in all episodes appearing as blank. I suspected this is related to lazy loading, which loads episodes by index (I don't know if we can change the lazy loading to use episode ID instead a list index).

https://github.com/advplyr/audiobookshelf/assets/814828/e5d77996-3d1a-4529-909f-852d3d238c0b


🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.

## 📋 Pull Request Information **Original PR:** https://github.com/advplyr/audiobookshelf/pull/2717 **Author:** [@mfcar](https://github.com/mfcar) **Created:** 3/6/2024 **Status:** 🔄 Open **Base:** `master` ← **Head:** `mf/podcastSeason` --- ### 📝 Commits (5) - [`090ba90`](https://github.com/advplyr/audiobookshelf/commit/090ba90b3782fbc4acbf735abd116038186a6367) Add season filter - [`2f97499`](https://github.com/advplyr/audiobookshelf/commit/2f97499612fcf651b2e9e052f5805365e298dd43) Show the filter control only for the serial podcast type - [`0ced072`](https://github.com/advplyr/audiobookshelf/commit/0ced0721dbbbbb415375d68b7c9e6b32ea9d8fdb) Format the season group and add strings - [`a4d3dfa`](https://github.com/advplyr/audiobookshelf/commit/a4d3dfa9b2fe17f7fc4b0fb9754fe45484ffe51c) Add expand/collapse option - [`6f58f3f`](https://github.com/advplyr/audiobookshelf/commit/6f58f3fd2c68993144f63a1954260bf60365ff01) Add episodesSorted watch item ### 📊 Changes **2 files changed** (+109 additions, -8 deletions) <details> <summary>View changed files</summary> 📝 `client/components/tables/podcast/LazyEpisodesTable.vue` (+106 -7) 📝 `client/strings/en-us.json` (+3 -1) </details> ### 📄 Description This PR updates the interface for a podcast when the type is set to 'serial'. When a podcast is of the 'serial' type, some changes are made on the page: - A new dropdown is displayed to filter by a specific season. - All the seasons are grouped in collapse/expand groups. - The initial state for the collapse/expand groups is closed, but the most recent season is displayed as open initially. - The number of episodes is shown on each group header. - Filters for episode status (complete, in progress, and incomplete) are functional. - In the grouping, if an episode doesn't contain the season information, it will be grouped under an 'unknown' season. - Two new phrases have been added for use in the season dropdown filter: - "LabelAllSeasons": "All Seasons" - "LabelSeasonUnknown": "Season Unknown" --- **Screenshots:** <img width="1149" alt="Screenshot 2024-03-06 at 16 27 32" src="https://github.com/advplyr/audiobookshelf/assets/814828/7875ec79-252f-4c03-99bc-f6f2caf1b756"> Serial (seasons) vs Episodic UI **Demo** https://github.com/advplyr/audiobookshelf/assets/814828/92ea31d6-c538-4ba0-a9cb-621c6188e651 --- **Known issues** Before removing the draft status, there are two known issues that I am trying to understand: - The first issue is related to lazy loading. Occasionally, the episodes listing starts to behave erratically and does not load properly. Additionally, the most recent episode of the first season consistently appears as blank. https://github.com/advplyr/audiobookshelf/assets/814828/1e7f999d-9876-4e32-8ea6-ca485707a43f --- - The second issue is associated with sorting. While changing the sorting criteria (for example, from Title to PubDate) works as expected, changing the direction of a sort item results in all episodes appearing as blank. I suspected this is related to lazy loading, which loads episodes by index (I don't know if we can change the lazy loading to use episode ID instead a list index). https://github.com/advplyr/audiobookshelf/assets/814828/e5d77996-3d1a-4529-909f-852d3d238c0b --- <sub>🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.</sub>
adam added the pull-request label 2026-04-25 00:17:02 +02:00
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: starred/audiobookshelf#3778