Project

General

Profile

Revision 377a9c23

ID377a9c234222a47bd8b9e57aea0652575350baeb
Parent 173d37e2
Child 283f0810

Added by Francois POIROTTE about 10 years ago

Export alertes CSV dans VigiBoard

Le type MIME text/csv ne doit pas être exposé directement car il pose
des problèmes sur certaines versions d'Internet Explorer (8/9 au moins).

A la place, il faut modifier dynamiquement le type de la réponse lorsque
cela est nécessaire (en fonction du type de la requête).

Testé sous Firefox 30 et Internet Explorer 8.0.7061.17514.

Change-Id: Ia3b845a253ca363ea90755fd06471a4d0027d26d
Reviewed-on: https://vigilo-dev.si.c-s.fr/review/1443
Tested-by: Build system <>
Reviewed-by: Thomas BURGUIERE <>

View differences:

vigiboard/controllers/root.py
26 26
from pkg_resources import resource_filename, working_set
27 27

  
28 28
from tg.exceptions import HTTPNotFound
29
from tg.controllers import CUSTOM_CONTENT_TYPE
29 30
from tg import expose, validate, require, flash, url, \
30 31
    tmpl_context, request, response, config, session, redirect
31 32
from webhelpers import paginate
......
153 154
    @validate(
154 155
        validators=IndexSchema(),
155 156
        error_handler = process_form_errors)
156
    @expose('events_table.html')
157
    @expose('events_table.html', content_type='text/csv')
157
    @expose('events_table.html', content_type=CUSTOM_CONTENT_TYPE)
158 158
    @require(access_restriction)
159 159
    def index(self, page, sort=None, order=None, **search):
160 160
        """
......
256 256
            response.headers['Pragma'] = 'public'           # Nécessaire pour IE.
257 257
            response.headers['Cache-Control'] = 'max-age=0' # Nécessaire pour IE.
258 258

  
259
            response.headers["Content-Type"] = "text/csv"
259 260
            response.headers['Content-Disposition'] = \
260 261
                            'attachment;filename="alerts.csv"'
261 262
            return export_csv.export(page, plugins_data)

Also available in: Unified diff