]> git.parisson.com Git - teleforma.git/commitdiff
prepare time management
authorGuillaume Pellerin <yomguy@parisson.com>
Tue, 15 Jul 2014 14:45:58 +0000 (16:45 +0200)
committerGuillaume Pellerin <yomguy@parisson.com>
Tue, 15 Jul 2014 14:45:58 +0000 (16:45 +0200)
teleforma/views/pro.py

index eca52db90e89822dc86b34a8a0bae5c299360690..896a76b1cc1f429670e46eddaf305b8976e58d2e 100644 (file)
@@ -99,7 +99,11 @@ def render_to_pdf(request, template, context, filename=None, encoding='utf-8',
 def set_revision(user, seminar):
     revisions = SeminarRevision.objects.filter(seminar=seminar, user=user)
     if revisions:
-        revisions[0].save()
+        r = revisions[0]
+        if not r.date_modified:
+            r.date_modified = datetime.datetime.now()
+        else:
+            SeminarRevision.objects.create(seminar=seminar, user=user)
     else:
         SeminarRevision.objects.create(seminar=seminar, user=user)
 
@@ -113,6 +117,18 @@ class SeminarAccessMixin(object):
             return redirect('teleforma-desk')
         return super(SeminarAccessMixin, self).render_to_response(context)
 
+    @jsonrpc_method('teleforma.seminar_load')
+    def seminar_load(request, id, username):
+        seminar = Seminar.objects.get(id=id)
+        user = User.objects.get(username=username)
+        set_revision(user, seminar)
+
+    @jsonrpc_method('teleforma.seminar_unload')
+    def seminar_unload(request, id, username):
+        seminar = Seminar.objects.get(id=id)
+        user = User.objects.get(username=username)
+        set_revision(user, seminar)
+
 
 class SeminarView(SeminarAccessMixin, DetailView):