|
5 | 5 | from django.shortcuts import render_to_response |
6 | 6 | from django.template import RequestContext |
7 | 7 | from ietf.contrib import wizard, form_decorator |
8 | | -from ietf.utils.mail import send_mail |
| 8 | +from ietf.utils.mail import send_mail_subj |
9 | 9 |
|
10 | 10 | def formchoice(form, field): |
11 | 11 | if not(form.is_valid()): |
@@ -107,15 +107,26 @@ def process_step(self, request, form, step): |
107 | 107 | super(NonWgWizard, self).process_step(request, form, step) |
108 | 108 | def done(self, request, form_list): |
109 | 109 | add_edit = self.clean_forms[0].clean_data['add_edit'] |
110 | | - # save row to database properly |
| 110 | + list = None |
| 111 | + old = None |
111 | 112 | if add_edit == 'add' or add_edit == 'edit': |
112 | 113 | template = 'mailinglists/nwg_addedit_email.txt' |
113 | 114 | approver = self.clean_forms[2].clean_data['approver'] |
| 115 | + list = NonWgMailingList(**self.clean_forms[1].clean_data) |
| 116 | + list.__dict__.update(self.clean_forms[2].clean_data) |
| 117 | + list.id = None # create a new row no matter what |
| 118 | + list.status = 0 |
| 119 | + if add_edit == 'edit': |
| 120 | + old = NonWgMailingList.objects.get(pk=self.clean_forms[0].clean_data['list_id']) |
114 | 121 | else: |
115 | 122 | template = 'mailinglists/nwg_delete_email.txt' |
116 | 123 | approver = self.clean_forms[1].clean_data['approver'] |
| 124 | + list = NonWgMailingList.objects.get(pk=self.clean_forms[0].clean_data['list_id_delete']) |
| 125 | + list.__dict__.update(self.clean_forms[1].clean_data) |
| 126 | + list.status = 1 |
| 127 | + list.save() |
117 | 128 | approver_email = PersonOrOrgInfo.objects.get(pk=approver).email() |
118 | | - send_mail(request, [ approver_email ], None, 'Request to %s on the Non-WG Mailing List Web Page' % add_edit, template, {'forms': self.clean_forms}) |
| 129 | + send_mail_subj(request, [ approver_email ], None, 'mailinglists/nwg_wizard_subject.txt', 'mailinglists/nwg_wizard_done_email.txt', {'add_edit': add_edit, 'old': old, 'list': list, 'forms': self.clean_forms}) |
119 | 130 | return render_to_response( 'mailinglists/nwg_wizard_done.html', {'forms': self.clean_forms}, context_instance=RequestContext(request) ) |
120 | 131 |
|
121 | 132 | def non_wg_wizard(request): |
|
0 commit comments