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

     1  <!-- Content managed by Project Forge, see [projectforge.md] for details. -->
     2  {% import (
     3    "strings"
     4  
     5    "github.com/kyleu/dbaudit/app"
     6    "github.com/kyleu/dbaudit/app/controller/cutil"
     7    "github.com/kyleu/dbaudit/app/lib/search"
     8    "github.com/kyleu/dbaudit/app/lib/search/result"
     9    "github.com/kyleu/dbaudit/views/components"
    10  ) %}
    11  
    12  {% func Result(res *result.Result, params *search.Params, as *app.State, ps *cutil.PageState) %}
    13    <div class="card">
    14      <div class="right">
    15        {%- if res.Data == nil -%}
    16        <em>{%s res.Type %}</em>
    17        {%- elseif res.ID != "" -%}
    18        <a href="#modal-{%s res.Type %}-{%s res.ID %}"><button type="button">{%s res.Type %}</button></a>
    19        {%= components.JSONModal(res.Type + "-" + res.ID, res.Type, res.Data, 3) %}
    20        {%- endif -%}
    21      </div>
    22      <h3>{% if res.Icon != "" %}<a href="{%s res.URL %}">{%= components.Icon(res.Icon, 18, "", ps) %}</a>{% space %}{% endif %}<a href="{%s res.URL %}">{% if res.Title == "" %}{%s res.URL %}{% else %}{%s res.Title %}{% endif %}</a></h3>
    23      <p>{%= Match(params, res.Matches) %}</p>
    24      {%- if res.HTML != "" -%}
    25      <div>{%s= res.HTML %}</div>
    26      {%- endif -%}
    27    </div>
    28  {% endfunc %}
    29  
    30  {% func Match(params *search.Params, matches result.Matches) %}
    31    <ul>
    32      {%- if len(matches) == 0 -%}
    33      <li><em>{%s params.Q %}</em></li>
    34      {%- endif -%}
    35      {%- for _, m := range matches -%}
    36      <li>
    37        <em>{%s m.Key %}</em>:
    38        {%- code split := m.ValueSplit(params.Q) -%}
    39        {%- for _, x := range split -%}{% if strings.EqualFold(x, params.Q) %}<strong>{%s x %}</strong>{% else %}{%s x %}{% endif %}{%- endfor -%}
    40      </li>
    41      {%- endfor -%}
    42    </ul>
    43  {% endfunc %}