aircox-radiocampus/aircox/views/episode.py
Thomas Kairos cd19c26e82 #93: reorganise Rerun, Diffusion, Schedule module (#95)
#93

Co-authored-by: bkfox <thomas bkfox net>
Reviewed-on: rc/aircox#95
2023-04-02 20:37:47 +02:00

28 lines
755 B
Python

from ..filters import EpisodeFilters
from ..models import Episode, Program, StaticPage
from .page import PageListView
from .program import ProgramPageDetailView
__all__ = (
"EpisodeDetailView",
"EpisodeListView",
)
class EpisodeDetailView(ProgramPageDetailView):
model = Episode
def get_context_data(self, **kwargs):
if "tracks" not in kwargs:
kwargs["tracks"] = self.object.track_set.order_by("position")
return super().get_context_data(**kwargs)
class EpisodeListView(PageListView):
model = Episode
filterset_class = EpisodeFilters
item_template_name = "aircox/widgets/episode_item.html"
has_headline = True
parent_model = Program
attach_to_value = StaticPage.ATTACH_TO_EPISODES