From 08c7a38fc8142ecbef35282a6f6a882193824444 Mon Sep 17 00:00:00 2001 From: Robert Sparks Date: Sat, 15 Jul 2017 08:39:40 +0000 Subject: [PATCH] Allow minutes to be uploaded after previous minutes had been uploaded and removed from the session. Fixes #2286. Commit ready for merge. - Legacy-Id: 13887 --- ietf/meeting/views.py | 27 ++++++++++++++++++--------- 1 file changed, 18 insertions(+), 9 deletions(-) diff --git a/ietf/meeting/views.py b/ietf/meeting/views.py index 5da471d2b..4a70baefe 100644 --- a/ietf/meeting/views.py +++ b/ietf/meeting/views.py @@ -1269,16 +1269,25 @@ def upload_session_minutes(request, session_id, num): else: name = 'minutes-%s-%s' % (session.meeting.number, sess_time.strftime("%Y%m%d%H%M")) title = 'Minutes %s: %s' % (session.meeting.number, sess_time.strftime("%a %H:%M")) - doc = Document.objects.create( - name = name, - type_id = 'minutes', - title = title, - group = session.group, - rev = '00', - ) + if Document.objects.filter(name=name).exists(): + doc = Document.objects.get(name=name) + doc.rev = '%02d' % (int(doc.rev)+1) + else: + doc = Document.objects.create( + name = name, + type_id = 'minutes', + title = title, + group = session.group, + rev = '00', + ) + doc.docalias_set.create(name=doc.name) doc.states.add(State.objects.get(type_id='minutes',slug='active')) - doc.docalias_set.create(name=doc.name) - session.sessionpresentation_set.create(document=doc,rev='00') + if session.sessionpresentation_set.filter(document=doc).exists(): + sp = session.sessionpresentation_set.get(document=doc) + sp.rev = doc.rev + sp.save() + else: + session.sessionpresentation_set.create(document=doc,rev=doc.rev) if apply_to_all: for other_session in sessions: if other_session != session: