From b7329b5150bcf649a54de4a3619a5f3109f45cb1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fr=C3=A9d=C3=A9ric=20P=C3=A9ters?= Date: Mon, 27 Jun 2016 18:14:40 +0200 Subject: [PATCH] formdef: expose urlname in API/variables, as form_slug (#11477) --- help/fr/api-user.page | 3 +++ help/fr/misc-substvars.page | 8 ++++++++ tests/test_api.py | 2 ++ tests/test_formdata.py | 1 + wcs/formdef.py | 1 + 5 files changed, 15 insertions(+) diff --git a/help/fr/api-user.page b/help/fr/api-user.page index fb377cd..ec7ea8a 100644 --- a/help/fr/api-user.page +++ b/help/fr/api-user.page @@ -69,6 +69,7 @@ l'adresse /user. "category_name": "Divers", "datetime": "2014-03-28 15:36:52", "form_name": "Demande d'inscription", + "form_slug": "demande-d-inscription", "form_number": "123", "form_number_raw": "123", "form_receipt_date": "28/03/2014", @@ -88,6 +89,7 @@ l'adresse /user. "category_name": "Prise de rendez-vous", "datetime": "2014-03-17 10:39:52", "form_name": "Rendez-vous avec le service B", + "form_slug": "rendez-vous-service-b", "form_number": "456", "form_number_raw": "456", "form_receipt_date": "17/03/2014", @@ -107,6 +109,7 @@ l'adresse /user. "category_name": "Modification de vos coordonn\u00e9es", "datetime": "2014-03-17 10:42:17", "form_name": "Changement d'adresse", + "form_slug": "changement-d-adresse", "form_number": "424", "form_number_raw": "424", "form_receipt_date": "17/03/2014", diff --git a/help/fr/misc-substvars.page b/help/fr/misc-substvars.page index cc336d1..5b57356 100644 --- a/help/fr/misc-substvars.page +++ b/help/fr/misc-substvars.page @@ -120,10 +120,18 @@ champs, etc.

La date et l'heure de réception du formulaire

+

form_name

+

Le titre du formulaire

+ +

form_number

Le numéro attribué au formulaire

+

form_slug

+

Le « slug » (partie d'adresse) du formulaire

+ +

form_url

L'adresse vers la vue du formulaire

diff --git a/tests/test_api.py b/tests/test_api.py index b016901..67bfadd 100644 --- a/tests/test_api.py +++ b/tests/test_api.py @@ -988,6 +988,8 @@ def test_user_forms(pub, local_user): resp2 = get_app(pub).get(sign_uri('/myspace/forms', user=local_user)) resp3 = get_app(pub).get(sign_uri('/api/users/%s/forms' % local_user.id)) assert len(resp.json) == 1 + assert resp.json[0]['form_name'] == 'test' + assert resp.json[0]['form_slug'] == 'test' assert resp.json[0]['form_status'] == 'New' assert resp.json[0]['keywords'] == ['hello', 'world'] assert resp.json == resp2.json == resp3.json diff --git a/tests/test_formdata.py b/tests/test_formdata.py index 7e03db5..fcbdfd2 100644 --- a/tests/test_formdata.py +++ b/tests/test_formdata.py @@ -56,6 +56,7 @@ def test_basic(pub): substvars = formdata.get_substitution_variables() assert substvars.get('form_status') == 'Unknown' assert substvars.get('form_name') == 'foobar' + assert substvars.get('form_slug') == 'foobar' def test_saved(pub): formdef.data_class().wipe() diff --git a/wcs/formdef.py b/wcs/formdef.py index a9ab183..7214b4a 100644 --- a/wcs/formdef.py +++ b/wcs/formdef.py @@ -964,6 +964,7 @@ class FormDef(StorableObject): def get_substitution_variables(self, minimal=False): d = { 'form_name': self.name, + 'form_slug': self.url_name, } if not minimal: d['form_objects'] = FormDefSubstVar(self) -- 2.8.1