From aa49b947cfa93d6725d6eebc692ad9eb73f64f52 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fr=C3=A9d=C3=A9ric=20P=C3=A9ters?= Date: Tue, 11 Jul 2017 09:52:11 +0200 Subject: [PATCH] strasbourg: add prefilling based on user profile --- strasbourg/reprise.py | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) diff --git a/strasbourg/reprise.py b/strasbourg/reprise.py index c999055..34439ee 100644 --- a/strasbourg/reprise.py +++ b/strasbourg/reprise.py @@ -57,6 +57,20 @@ field_id = 1 first_fieldset = True + +prefill = { + '_title': ['Civilité'], + '_first_name': ['Prénom'], + '_last_name': ['Nom'], + '_email': ['Courriel', 'Adresse e-mail', 'Adresse courriel', 'Adresse mail'], + '_zipcode': ['Code postal'], + '_city': ['Commune', 'Ville'], + '_phone': ['Téléphone'], + '_mobile': ['Téléphone mobile'], +} +prefill_used = {} + + def process_children(node): global field_id, first_fieldset @@ -165,6 +179,14 @@ def process_children(node): value = field_node.find('value') if value is not None and value.text: field.prefill = {'type': 'string', 'value': fix_encoding(value.text)} + else: + # prefill with user profile? + for key, field_names in prefill.items(): + if key in prefill_used: + continue + if field.label in field_names: + field.prefill = {'type': 'user', 'value': key} + prefill_used[key] = True process_children(root)