Skip to content

Commit f3d94ab

Browse files
committed
Re-worked create_proceedings_templates() so it does not blow up if it's run a second time for a given meeting.
- Legacy-Id: 14621
1 parent 3dd66eb commit f3d94ab

1 file changed

Lines changed: 21 additions & 11 deletions

File tree

ietf/meeting/utils.py

Lines changed: 21 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -95,19 +95,29 @@ def create_proceedings_templates(meeting):
9595
attendees = sorted(attendees, key = lambda a: a['LastName'])
9696
content = render_to_string('meeting/proceedings_attendees_table.html', {
9797
'attendees':attendees})
98-
DBTemplate.objects.create(
99-
path='/meeting/proceedings/%s/attendees.html' % meeting.number,
100-
title='IETF %s Attendee List' % meeting.number,
101-
type_id='django',
102-
content=content)
103-
98+
try:
99+
template = DBTemplate.objects.get(path='/meeting/proceedings/%s/attendees.html' % (meeting.number, ))
100+
template.title='IETF %s Attendee List' % meeting.number
101+
template.type_id='django'
102+
template.content=content
103+
template.save()
104+
except DBTemplate.DoesNotExist:
105+
DBTemplate.objects.create(
106+
path='/meeting/proceedings/%s/attendees.html' % (meeting.number, ),
107+
title='IETF %s Attendee List' % meeting.number,
108+
type_id='django',
109+
content=content)
104110
# Make copy of default IETF Overview template
105111
if not meeting.overview:
106-
template = DBTemplate.objects.get(path='/meeting/proceedings/defaults/overview.rst')
107-
template.id = None
108-
template.path = '/meeting/proceedings/%s/overview.rst' % (meeting.number)
109-
template.title = 'IETF %s Proceedings Overview' % (meeting.number)
110-
template.save()
112+
path = '/meeting/proceedings/%s/overview.rst' % (meeting.number, )
113+
try:
114+
template = DBTemplate.objects.get(path=path)
115+
except DBTemplate.DoesNotExist:
116+
template = DBTemplate.objects.get(path='/meeting/proceedings/defaults/overview.rst')
117+
template.id = None
118+
template.path = path
119+
template.title = 'IETF %s Proceedings Overview' % (meeting.number)
120+
template.save()
111121
meeting.overview = template
112122
meeting.save()
113123

0 commit comments

Comments
 (0)