view website/issues/html/user.help-search.html @ 6311:be8d5a8e090a

Fix uncaught error when parsing rest headers, document Started this work as better docs for rest response format. But I found 406 error response was not being tested. Also there was no error for bad Content-Type. In rest.py fix uncaught exceptions due to invalid Accept or Content-Type headers. If Content-type is valid but not application/json return code 415. Document use of accept header (was only shown in examples) and support for q parameter. Describe using .xml and .json extensions to select return format for testing from browser (where setting accept header is a problem). Document 406 error code return. Document 415 error code return and acceptable content types. Previously only doc was in examples. Set up tests for 406 and 415 error codes.
author John Rouillard <rouilj@ieee.org>
date Fri, 01 Jan 2021 14:14:34 -0500
parents 7146b68ac263
children 28aa76443f58
line wrap: on
line source

<html
  tal:define="form request/form/form/value;
  field request/form/property/value"
  >
  <head>
    <title>Search input for user helper</title>
    <script language="Javascript" type="text/javascript"
        tal:attributes="nonce request/client/client_nonce"
        tal:content="structure string:<!--
        // this is the name of the field in the original form that we're working on
        form  = parent.opener.document.${form};
        field  = '${field}';
        //-->">
    </script>
    <script type="text/javascript" src="@@file/help_controls.js"
	    tal:attributes="nonce request/client/client_nonce"></script>
    <link rel="stylesheet" type="text/css" href="@@file/style.css" />
  </head>
  <body onload="parent.submit.url='...'"
    tal:define="
qs request/env/QUERY_STRING;
qs python:'&'.join([a for a in qs.split('&') if not a.startswith('@template=')])"
>
    <pre tal:content="request/env/QUERY_STRING" tal:condition=false />
    <form method="get" name="itemSynopsis"
      target="list"
      tal:attributes="action request/classname"
      tal:define="
      property request/form/property/value;
   cols python:request.columns or 'id username address realname roles'.split();
   sort_on request/sort | nothing;
   sort_desc python:sort_on and request.sort[0][0] == '-';
   sort_on python:sort_on and request.sort[0][1] or 'lastname';

   search_input templates/page/macros/search_input;
   search_select templates/page/macros/search_select;
   search_select_roles templates/page/macros/search_select_roles;
   required python:[];
   th_label templates/page/macros/th_label;
   ">
   <input type="hidden" name="@template" value="help-list">
   <input type="hidden" name="property" value="" tal:attributes="value property">
   <input type="hidden" name="form" value="" tal:attributes="value request/form/form/value">
   <table>
<tr tal:define="name string:username; label string:Username:">
  <th metal:use-macro="th_label">Name</th>
  <td metal:use-macro="search_input"><input type=text></td>
</tr>

<tr tal:define="name string:roles;
                onchange string:this.form.submit();
                label string:Roles:"
                >
  <th metal:use-macro="th_label">role</th>
  <td metal:use-macro="search_select_roles">
    <select>
      <option value="">jokester</option>
    </select>
  </td>
</tr>

<tr>
  <td>&nbsp;</td>
  <td>
    <input type="hidden" name="@action" value="search">
    <input type="submit" value="Search" i18n:attributes="value">
    <input type="reset">
    <input type="hidden" value="username,realname,organisation,roles" name="properties">
    <input type="text" name="@pagesize" id="sp-pagesize" value="25" size="2">
    <label for="sp-pagesize" i18n:translate="">Pagesize</label>
  </td>
</tr>

   </table>

</form>
<pre tal:content="request" tal:condition=false />
<script type="text/javascript"
	tal:attributes="nonce request/client/client_nonce"><!--
  focus2id('username');
//--></script>
  </body>
</html>

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