manager: add possibility to remove events (#13041)

This commit is contained in:
Frédéric Péters 2016-09-04 17:50:55 +02:00
parent 86ea68a88a
commit bd9588ed6f
4 changed files with 17 additions and 1 deletions

View File

@ -88,6 +88,9 @@ class Event(models.Model):
return self.booking_set.filter(cancellation_datetime__isnull=True,
in_waiting_list=True).count()
def get_absolute_url(self):
return reverse('chrono-manager-event-edit', kwargs={'pk': self.id})
class Booking(models.Model):
event = models.ForeignKey(Event)

View File

@ -16,6 +16,7 @@
{% block appbar %}
{% if object.id %}
<h2>{% trans "Edit Event" %}</h2>
<a rel="popup" href="{% url 'chrono-manager-event-delete' pk=object.id %}">{% trans 'Delete' %}</a>
{% else %}
<h2>{% trans "New Event" %}</h2>
{% endif %}

View File

@ -32,5 +32,7 @@ urlpatterns = patterns('chrono.views',
name='chrono-manager-agenda-add-event'),
url(r'^events/(?P<pk>\w+)/$', views.event_edit,
name='chrono-manager-event-edit'),
url(r'^events/(?P<pk>\w+)/delete$', views.event_delete,
name='chrono-manager-event-delete'),
url(r'^menu.json$', views.menu_json),
)

View File

@ -100,9 +100,19 @@ class EventEditView(UpdateView):
def get_success_url(self):
return reverse('chrono-manager-agenda-view', kwargs={'pk': self.object.agenda_id})
event_edit = EventEditView.as_view()
class EventDeleteView(DeleteView):
template_name = 'chrono/manager_confirm_delete.html'
model = Event
def get_success_url(self):
return self.object.agenda.get_absolute_url()
event_delete = EventDeleteView.as_view()
def menu_json(request):
response = HttpResponse(content_type='application/json')
label = _('Agendas')