From 898177e0b4afb7fc161aeb7c44bf5c1f35ff147c Mon Sep 17 00:00:00 2001 From: Guillaume Pellerin Date: Tue, 7 Jan 2014 23:51:00 +0100 Subject: [PATCH] add rpc publish methods for seminars --- teleforma/models/pro.py | 3 +- .../templates/teleforma/seminar_detail.html | 60 +++++++++++++++++-- teleforma/views/pro.py | 12 ++++ 3 files changed, 70 insertions(+), 5 deletions(-) diff --git a/teleforma/models/pro.py b/teleforma/models/pro.py index 5bbbe5ec..7cc62f1f 100755 --- a/teleforma/models/pro.py +++ b/teleforma/models/pro.py @@ -58,7 +58,8 @@ class SeminarType(models.Model): class Seminar(ClonableMixin, Displayable): - # title, description, keywords and dates are given by Displayable + # title, description, keywords, dates and status are given by Displayable + # status values : 1: draft, 2: published type = models.ForeignKey(SeminarType, related_name='seminar', verbose_name=_('type'), blank=True, null=True) diff --git a/teleforma/templates/teleforma/seminar_detail.html b/teleforma/templates/teleforma/seminar_detail.html index ac5e2237..d0fa4a79 100644 --- a/teleforma/templates/teleforma/seminar_detail.html +++ b/teleforma/templates/teleforma/seminar_detail.html @@ -33,6 +33,47 @@ $(function () { }); + +{% if user.is_staff %} + +{% endif %} + {% endblock infra_javascript %} @@ -43,14 +84,25 @@ $(function () {
- {{ seminar.title }} +
+ {{ seminar.title }} +
- {% if seminar_progress == 100 %} - {% trans - {% endif %} + {% if seminar_progress == 100 %} + {% trans + {% endif %} + + {% if user.is_staff %} + {% if seminar.status == 2 %}{% trans " published" %}{% else %}{% trans " rejected" %}{% endif %} + {% endif %}
+
+ {% if seminar_progress == 100 %} + {% trans + {% endif %} +
{% block course_content %} diff --git a/teleforma/views/pro.py b/teleforma/views/pro.py index 9a73544e..5c3c6427 100644 --- a/teleforma/views/pro.py +++ b/teleforma/views/pro.py @@ -141,6 +141,18 @@ class SeminarView(SeminarAccessMixin, DetailView): set_revision(user, seminar) return context + @jsonrpc_method('teleforma.publish_seminar') + def publish(request, id): + seminar = Seminar.objects.get(id=id) + seminar.status = 2 + seminar.save() + + @jsonrpc_method('teleforma.unpublish_seminar') + def unpublish(request, id): + seminar = Seminar.objects.get(id=id) + seminar.status = 1 + seminar.save() + class SeminarsView(ListView): -- 2.39.5