Mercurial > p > roundup > code
view share/roundup/templates/devel/html/help.html @ 8040:19cef1e285b0
fix: remove delay when using csv export actions.
The CSV file is written incrementally, so we can't determine the
Content-Length. When using HTTP/1.1, this causes a delay while the
browser waits for a timeout. Forcing the connection to close after
the CSV file is written removes the delay.
Ideally we should shift to chunked transfer encoding for these two
actions, but that is much more invasive and when posting a request for
CSV, it is unlikely that another request will be sent over the same
socket.
| author | John Rouillard <rouilj@ieee.org> |
|---|---|
| date | Tue, 18 Jun 2024 00:48:06 -0400 |
| parents | 44a9c74394b4 |
| children | 28aa76443f58 |
line wrap: on
line source
<tal:block metal:define-macro="frame"> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html tal:define="what python:request.form.getvalue('property', request.classname); form request/form/form/value; field request/form/property/value"> <head> <meta http-equiv="Content-Type" tal:attributes="content string:text/html;; charset=${request/client/charset}" /> <title i18n:translate=""> <tal:x i18n:name="what" tal:content="what" i18n:translate="" /> help - <span i18n:name="tracker" tal:replace="config/TRACKER_NAME" /> </title> <script language="Javascript" type="text/javascript" tal:content="structure string:<!-- // this is the name of the field in the original form that we're working on form = window.opener.document.${form}; field = '${field}'; //-->"> </script> <link rel="stylesheet" type="text/css" href="@@file/help.css" /> <script src="@@file/help_controls.js" type="text/javascript"></script> <metal:x define-slot="more-javascript" /> </head> <body onload="resetList();"> <div class="header"> <h1>Roundup Issue Tracker: Help - <tal:block tal:content="what">item</tal:block></h1> </div> <div class="content"> <tal:block metal:define-slot="content">Page content goes here</tal:block> </div> <!-- content --> <div class="footer"> <tal:block metal:define-slot="footer"></tal:block> </div> <!-- footer --> </body> </html> </tal:block> <!-- legend for helper search results --> <thead> <tr metal:define-macro="legend"> <th tal:repeat="prop props" tal:content="prop" i18n:translate=""></th> </tr> </thead> <table width="100%" metal:define-macro="batch_navi" tal:define="prev batch/previous; next batch/next;" tal:condition="python:prev or next"> <tr class="navigation"> <th width="30%"> <a tal:condition="prev" tal:attributes="href python:request.indexargs_url(request.classname, {'@template':'help-list', 'property': property, 'properties': request.form['properties'].value, 'form': request.form['form'].value, '@startwith':prev.first, '@pagesize':prev.size})" i18n:translate="" ><< previous</a> </th> <th i18n:translate="" width="40%"><span tal:replace="batch/start" i18n:name="start" />..<span tal:replace="python: batch.start + batch.length -1" i18n:name="end" /> out of <span tal:replace="batch/sequence_length" i18n:name="total" /> </th> <th width="30%"> <a tal:condition="next" tal:attributes="href python:request.indexargs_url(request.classname, {'@template':'help-list', 'property': property, 'properties': request.form['properties'].value, 'form': request.form['form'].value, '@startwith':next.first, '@pagesize':next.size})" i18n:translate="" >next >></a> </th> </tr> </table>
