view share/roundup/templates/devel/html/help.html @ 7665:6f841a55eabf

fix: database error handling during import of a non-user item The code to handle the case of retired and active users causing errors during import can get called on other db errors as well (e.g. out of memory in postgresql). The code that trys to detect/repair the out of order user case hard coded the db.user class. This crashed when a db error occurred when loading another data object (e.g. msg). Fix the crash by using the proper db object class for the object class being loaded. Credit to Norbert Schlemmer for finding this.
author John Rouillard <rouilj@ieee.org>
date Wed, 18 Oct 2023 15:49:53 -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="" >&lt;&lt; previous</a>
    &nbsp;
   </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 &gt;&gt;</a>
    &nbsp;
   </th>
  </tr>
</table>

Roundup Issue Tracker: http://roundup-tracker.org/