github.com/kyleu/dbaudit@v0.0.2-0.20240321155047-ff2f2c940496/views/vstatement/Detail.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/statement"
     6    "github.com/kyleu/dbaudit/views/components"
     7    "github.com/kyleu/dbaudit/views/components/view"
     8    "github.com/kyleu/dbaudit/views/layout"
     9  ) %}
    10  
    11  {% code type Detail struct {
    12    layout.Basic
    13    Model *statement.Statement
    14  } %}
    15  
    16  {% func (p *Detail) Body(as *app.State, ps *cutil.PageState) %}
    17    <div class="card">
    18      <div class="right">
    19        <a href="#modal-statement"><button type="button">JSON</button></a>
    20        <a href="{%s p.Model.WebPath() %}/edit"><button>{%= components.SVGRef("edit", 15, 15, "icon", ps) %}Edit</button></a>
    21      </div>
    22      <h3>{%= components.SVGRefIcon(`database`, ps) %} {%s p.Model.TitleString() %}</h3>
    23      <div><a href="/statement"><em>Statement</em></a></div>
    24      <div class="mt overflow full-width">
    25        <table>
    26          <tbody>
    27            <tr>
    28              <th class="shrink" title="UUID in format (00000000-0000-0000-0000-000000000000)">ID</th>
    29              <td>{%= view.UUID(&p.Model.ID) %}</td>
    30            </tr>
    31            <tr>
    32              <th class="shrink" title="Integer">Session ID</th>
    33              <td>{%d p.Model.SessionID %}</td>
    34            </tr>
    35            <tr>
    36              <th class="shrink" title="{%s statement.AllActions.Help() %}">Action</th>
    37              <td>{%s p.Model.Action.String() %}</td>
    38            </tr>
    39            <tr>
    40              <th class="shrink" title="Value [true] or [false]">Succeeded</th>
    41              <td>{%v p.Model.Succeeded %}</td>
    42            </tr>
    43            <tr>
    44              <th class="shrink" title="String text">Principal</th>
    45              <td>{%= view.String(p.Model.Principal) %}</td>
    46            </tr>
    47            <tr>
    48              <th class="shrink" title="String text">Database</th>
    49              <td>{%= view.String(p.Model.Database) %}</td>
    50            </tr>
    51            <tr>
    52              <th class="shrink" title="String text">Filename</th>
    53              <td>{%= view.String(p.Model.Filename) %}</td>
    54            </tr>
    55            <tr>
    56              <th class="shrink" title="String text">Host</th>
    57              <td>{%= view.String(p.Model.Host) %}</td>
    58            </tr>
    59            <tr>
    60              <th class="shrink" title="Integer">Transaction ID</th>
    61              <td>{%d p.Model.TransactionID %}</td>
    62            </tr>
    63            <tr>
    64              <th class="shrink" title="String text">Client IP</th>
    65              <td>{%= view.String(p.Model.ClientIP) %}</td>
    66            </tr>
    67            <tr>
    68              <th class="shrink" title="Integer">Duration</th>
    69              <td>{%d p.Model.Duration %}</td>
    70            </tr>
    71            <tr>
    72              <th class="shrink" title="UUID in format (00000000-0000-0000-0000-000000000000)">Connection ID</th>
    73              <td>{%= view.UUID(&p.Model.ConnectionID) %}</td>
    74            </tr>
    75            <tr>
    76              <th class="shrink" title="Integer">Rows Affected</th>
    77              <td>{%d p.Model.RowsAffected %}</td>
    78            </tr>
    79            <tr>
    80              <th class="shrink" title="Integer">Rows Returned</th>
    81              <td>{%d p.Model.RowsReturned %}</td>
    82            </tr>
    83            <tr>
    84              <th class="shrink" title="String text">SQL</th>
    85              <td>{%= view.Format(p.Model.SQL, "sql") %}</td>
    86            </tr>
    87            <tr>
    88              <th class="shrink" title="JSON object">Types</th>
    89              <td>{%= components.JSON(p.Model.Types) %}</td>
    90            </tr>
    91            <tr>
    92              <th class="shrink" title="JSON object">Values</th>
    93              <td>{%= components.JSON(p.Model.Values) %}</td>
    94            </tr>
    95            <tr>
    96              <th class="shrink" title="Date and time, in almost any format">Occurred</th>
    97              <td>{%= view.Timestamp(&p.Model.Occurred) %}</td>
    98            </tr>
    99          </tbody>
   100        </table>
   101      </div>
   102    </div>
   103    {%- comment %}$PF_SECTION_START(extra)${% endcomment -%}
   104    {%= RenderPlan(p.Model, as, ps) %}
   105    {%- comment %}$PF_SECTION_END(extra)${% endcomment -%}
   106    {%= components.JSONModal("statement", "Statement JSON", p.Model, 1) %}
   107  {% endfunc %}