github.com/kyleu/dbaudit@v0.0.2-0.20240321155047-ff2f2c940496/views/vsearch/Results.html (about)

     1  <!-- Content managed by Project Forge, see [projectforge.md] for details. -->
     2  {% import (
     3    "github.com/kyleu/dbaudit/app"
     4    "github.com/kyleu/dbaudit/app/controller/cutil"
     5    "github.com/kyleu/dbaudit/app/lib/search"
     6    "github.com/kyleu/dbaudit/app/lib/search/result"
     7    "github.com/kyleu/dbaudit/app/util"
     8    "github.com/kyleu/dbaudit/views/layout"
     9  ) %}
    10  
    11  {% code type Results struct {
    12    layout.Basic
    13    Params *search.Params
    14    Results result.Results
    15    Errors []error
    16  } %}
    17  
    18  {% func (p *Results) Body(as *app.State, ps *cutil.PageState) %}
    19    <div class="card">
    20      <h3>{% if p.Params.Q == "" %}Search{% else %}[{%s p.Params.Q %}] search results{% endif %}</h3>
    21      <form class="mt expanded" action="{%s ps.SearchPath %}">
    22        <input name="q" value="{%s p.Params.Q %}" />
    23        <div class="mt"><button type="submit">Search Again</button></div>
    24      </form>
    25    </div>
    26    {%- if p.Params.Q != "" && len(p.Results) == 0 -%}
    27    <div class="card">
    28      <h3>No results</h3>
    29    </div>
    30    {%- endif -%}
    31    {%- for _, res := range p.Results -%}
    32    {%= Result(res, p.Params, as, ps) %}
    33    {%- endfor -%}
    34    {% if len(p.Errors) > 0 %}
    35    <div class="card">
    36      <h3>{%s util.StringPlural(len(p.Errors), "Error") %}</h3>
    37      <ul class="mt">
    38        {%- for _, e := range p.Errors -%}
    39        <li>{%s e.Error() %}</li>
    40        {%- endfor -%}
    41      </ul>
    42    </div>
    43    {% endif %}
    44  {% endfunc %}