X-Git-Url: https://git.mdrn.pl/edumed.git/blobdiff_plain/736d94f6ac63f205be2967f013a15c457032fc2f..287810169b6e8dd5bee6d6f6704e8d7e3e8097c4:/edumed/contact_forms.py diff --git a/edumed/contact_forms.py b/edumed/contact_forms.py index 507c6d1..8d3131e 100644 --- a/edumed/contact_forms.py +++ b/edumed/contact_forms.py @@ -128,6 +128,37 @@ class WTEMForm(ContactForm): required=False ) + extract_types = (dict(slug='extended', label=_('extended')),) + + @staticmethod + def get_extract_fields(contact, extract_type_slug): + fields = contact.body.keys() + fields.pop(fields.index('student')) + fields.extend(['contact', 'student_first_name', 'student_last_name', 'student_email']) + return fields + + @staticmethod + def get_extract_records(keys, contact, extract_type_slug): + toret = [dict()] + for field_name in keys: + if field_name.startswith('student_'): + continue + if field_name == 'contact': + val = contact.contact + else: + val = contact.body[field_name] + toret[0][field_name] = val + + current = toret[0] + for student in contact.body['student']: + for attr in ('first_name', 'last_name', 'email'): + current['student_' + attr] = student[attr] + if not current in toret: + toret.append(current) + current = dict() + return toret + + class MILForm(ContactForm): form_tag = 'mil' form_title = _('Share your thoughts on the "Media and information literacy competencies catalogue"')