forked from rc/aircox
misc: enable adding new episodes
This commit is contained in:
@ -1,5 +1,7 @@
|
||||
from django.contrib.auth.mixins import UserPassesTestMixin
|
||||
from django.shortcuts import get_object_or_404
|
||||
from django.urls import reverse
|
||||
from django.utils.translation import gettext_lazy as _
|
||||
|
||||
from aircox.models import Episode, Program, StaticPage, Track
|
||||
from aircox import forms, filters, permissions
|
||||
@ -12,6 +14,7 @@ __all__ = (
|
||||
"EpisodeDetailView",
|
||||
"EpisodeListView",
|
||||
"PodcastListView",
|
||||
"EpisodeCreateView",
|
||||
"EpisodeUpdateView",
|
||||
)
|
||||
|
||||
@ -139,3 +142,9 @@ class EpisodeUpdateView(UserPassesTestMixin, VueFormDataMixin, PageUpdateView):
|
||||
if invalid:
|
||||
return self.get(request, **formsets)
|
||||
return resp
|
||||
|
||||
|
||||
class EpisodeCreateView(EpisodeUpdateView):
|
||||
def get_object(self):
|
||||
program = get_object_or_404(Program, pk=self.kwargs["pk"])
|
||||
return Episode.objects.create(program=program, title="%s (%s)" % (program.title, _("draft")))
|
||||
|
Reference in New Issue
Block a user