Projet

Général

Profil

0001-api-include-field-varname-in-geojson-output-25111.patch

Frédéric Péters, 06 juillet 2018 12:28

Télécharger (2,86 ko)

Voir les différences:

Subject: [PATCH] api: include field varname in geojson output (#25111)

 tests/test_api.py            | 6 +++++-
 wcs/backoffice/management.py | 3 ++-
 2 files changed, 7 insertions(+), 2 deletions(-)
tests/test_api.py
1597 1597
    formdef.workflow_roles = {'_receiver': role.id}
1598 1598
    formdef.fields = [
1599 1599
        fields.StringField(id='0', label='foobar', varname='foobar', type='string'),
1600
        fields.FileField(id='1', label='foobar1', varname='file', type='file')
1600
        fields.FileField(id='1', label='foobar1', type='file')
1601 1601
    ]
1602 1602
    formdef.store()
1603 1603

  
......
1645 1645
    display_fields = resp.json['features'][0]['properties']['display_fields']
1646 1646
    for field in display_fields:
1647 1647
        if field['label'] == 'Number':
1648
            assert field['varname'] == 'id'
1648 1649
            assert field['html_value'] == '1-28'
1649 1650
            assert field['value'] == '1-28'
1650 1651
        if field['label'] == 'User Label':
1652
            assert field['varname'] == 'user_label'
1651 1653
            assert field['value'] == username
1652 1654
            assert field['html_value'] == "<font color="red">Jean Darmette</font>"
1653 1655
        if field['label'] == 'foobar':
1656
            assert field['varname'] == 'foobar'
1654 1657
            assert field['value'] == foobar
1655 1658
            assert field['html_value'] == "<font color="red">FOO BAR</font>"
1656 1659
        if field['label'] == 'foobar1':
1660
            assert field['varname'] is None
1657 1661
            assert field['value'] == "test.txt"
1658 1662
            assert field['html_value'] == '<div class="file-field"><a download="test.txt" href="http://example.net/backoffice/management/test/28/download?f=1"><span>test.txt</span></a></div>'
1659 1663

  
wcs/backoffice/management.py
90 90
                    continue
91 91

  
92 92
                display_fields.append({
93
                    'varname': field.varname,
93 94
                    'label': field.label,
94 95
                    'value': str(value),
95 96
                    'html_value': str(htmlescape(html_value))
......
2274 2275
        self.type = type_
2275 2276
        self.label = label
2276 2277
        self.fake = True
2277
        self.varname = None
2278
        self.varname = id.replace('-', '_')
2278 2279
        self.store_display_value = None
2279 2280

  
2280 2281
    def get_view_value(self, value):
2281
-