Projet

Général

Profil

0001-assets-add-template-tag-to-get-URL-property-for-CSS-.patch

Frédéric Péters, 14 juillet 2019 08:28

Télécharger (2,92 ko)

Voir les différences:

Subject: [PATCH] assets: add template tag to get URL property for CSS (#34812)

 combo/apps/assets/templatetags/assets.py |  8 ++++++++
 tests/test_public_templatetags.py        | 11 +++++++++++
 2 files changed, 19 insertions(+)
combo/apps/assets/templatetags/assets.py
57 57

  
58 58
    return get_thumbnail(asset, geometry_string, **kwargs).url
59 59

  
60
@register.simple_tag
61
def asset_css_url(*args, **kwargs):
62
    url = asset_url(*args, **kwargs)
63
    if url:
64
        return 'url(%s)' % url
65
    else:
66
        return 'none'
67

  
60 68

  
61 69
@register.assignment_tag
62 70
def get_asset(key):
tests/test_public_templatetags.py
150 150
        t = Template('''{% load assets %}{% get_asset "collectivity:banner" as banner %}{% if banner %}BANNER{% endif %}''')
151 151
        assert t.render(Context()) == ''
152 152

  
153
        t = Template('''{% load assets %}{% asset_url "collectivity:banner" %}''')
154
        assert t.render(Context()) == ''
155
        t = Template('''{% load assets %}{% asset_css_url "collectivity:banner" %}''')
156
        assert t.render(Context()) == 'none'
157

  
158
        t = Template('''{% load assets %}{% get_asset "collectivity:banner" as banner %}{% if banner %}BANNER{% endif %}''')
153 159
        Asset(key='collectivity:banner', asset=File(StringIO('test'), 'test.png')).save()
154 160
        assert t.render(Context()) == 'BANNER'
155 161

  
156 162
        t = Template('''{% load assets %}{% asset_url "collectivity:banner" %}''')
157 163
        assert t.render(Context()) == '/media/assets/test.png'
164
        t = Template('''{% load assets %}{% asset_css_url "collectivity:banner" %}''')
165
        assert t.render(Context()) == 'url(/media/assets/test.png)'
158 166

  
159 167
        page = Page(title='Home', slug='index', template_name='standard')
160 168
        page.save()
161 169

  
162 170
        t = Template('''{% load assets %}{% asset_url page.picture "collectivity:banner" %}''')
163 171
        assert t.render(Context()) == '/media/assets/test.png'
172
        t = Template('''{% load assets %}{% asset_css_url page.picture "collectivity:banner" %}''')
173
        assert t.render(Context()) == 'url(/media/assets/test.png)'
164 174

  
165 175
        page.picture = File(StringIO('test'), 'test2.png')
166 176
        page.save()
177
        t = Template('''{% load assets %}{% asset_url page.picture "collectivity:banner" %}''')
167 178
        assert t.render(Context({'page': page})) == '/media/page-pictures/test2.png'
168 179

  
169 180
        # pass image to sorl.thumbnail
170
-