]> git.0d.be Git - earwig.git/commitdiff
manager: add page to edit channel
authorFrédéric Péters <fpeters@0d.be>
Sun, 2 Sep 2018 11:59:52 +0000 (13:59 +0200)
committerFrédéric Péters <fpeters@0d.be>
Sun, 2 Sep 2018 12:09:43 +0000 (14:09 +0200)
earwig/manager/templates/earwig/manager_channel.html
earwig/manager/templates/earwig/manager_channel_edit.html [new file with mode: 0644]
earwig/manager/urls.py
earwig/manager/views.py

index 2e9f7227e9d0af18a87c7a0148bae0ecab86d160..82275347999a4109112fc816ae3c2e7c275b4665 100644 (file)
@@ -3,6 +3,10 @@
 
 {% block appbar %}
 <h2>{{ object }}</h2>
+<span class="actions">
+<a rel="popup" href="{% url 'earwig-channel-delete' pk=object.pk %}">{% trans "Delete" %}</a>
+<a rel="popup" href="{% url 'earwig-channel-edit' pk=object.pk %}">{% trans "Edit" %}</a>
+</span>
 {% endblock %}
 
 {% block content %}
diff --git a/earwig/manager/templates/earwig/manager_channel_edit.html b/earwig/manager/templates/earwig/manager_channel_edit.html
new file mode 100644 (file)
index 0000000..f88e1c5
--- /dev/null
@@ -0,0 +1,17 @@
+{% extends "earwig/manager_home.html" %}
+{% load i18n %}
+
+{% block appbar %}
+<h2>{% trans "Edit Channel" %}</h2>
+{% endblock %}
+
+{% block content %}
+<form method="post" enctype="multipart/form-data">
+{% csrf_token %}
+{{ form.as_p }}
+<div class="buttons">
+<button class="submit-button">{% trans "Submit" %}</button>
+<a class="cancel" href="{% url 'earwig-channel-detail' pk=object.pk %}">{% trans "Cancel" %}</a>
+</div>
+</form>
+{% endblock %}
index bd7edfae6c9552c7c5f528793f66f4d6fc80fa6f..dd1fc11af28d2ffb1f9c177d151f55f69d9f4547 100644 (file)
@@ -23,6 +23,7 @@ urlpatterns = [
     url(r'^channels/$', views.channels, name='earwig-channels'),
     url(r'^channels/add/$', views.channel_add, name='earwig-channel-add'),
     url(r'^channels/(?P<pk>\d+)/$', views.channel_detail, name='earwig-channel-detail'),
+    url(r'^channels/(?P<pk>\d+)/edit/$', views.channel_edit, name='earwig-channel-edit'),
     url(r'^channels/(?P<pk>\d+)/delete/$', views.channel_delete, name='earwig-channel-delete'),
     url(r'^sound/(?P<pk>\d+)/$', views.sound_detail, name='earwig-sound-detail'),
     url(r'^sound/(?P<pk>\d+)/publish/$', views.sound_publish, name='earwig-sound-publish'),
index dd1f63674894fe172b054a96fca56b87d26fe4cb..265a5bb0c04932c2dbaca955c3b10cd1abbde3cb 100644 (file)
@@ -19,7 +19,7 @@ from django.contrib import messages
 from django.db.models import Q
 from django.shortcuts import redirect
 from django.utils.translation import ugettext_lazy as _
-from django.views.generic import ListView, CreateView, DetailView, DeleteView
+from django.views.generic import ListView, CreateView, DetailView, UpdateView, DeleteView
 
 from ..sounds.models import Channel, Sound, STATUSES
 
@@ -101,6 +101,16 @@ class ChannelAdd(CreateView):
 channel_add = ChannelAdd.as_view()
 
 
+class ChannelEdit(UpdateView):
+    model = Channel
+    fields = ('title', 'channel_url', 'feed_url', 'policy')
+    template_name = 'earwig/manager_channel_edit.html'
+
+    def get_success_url(self):
+        return reverse_lazy('earwig-channel', kwargs={'pk': self.get_object().pk})
+
+channel_edit = ChannelEdit.as_view()
+
 class ChannelDeleteView(DeleteView):
     model = Channel
     template_name = 'earwig/manager_channel_confirm_delete.html'