<!--
  Copyright 2021 The Go Authors. All rights reserved.
  Use of this source code is governed by a BSD-style
  license that can be found in the LICENSE file.
-->

{{define "title"}}
  <title>Vulnerability Report: {{.ID}} - Go Packages</title>
{{end}}

{{define "main-styles"}}
  <link href="/static/frontend/vuln/entry/entry.min.css?version={{.AppVersionLabel}}" rel="stylesheet">
{{end}}

{{define "main-content"}}
  {{/* . is internal/frontend.VulnPage */}}
  <nav class="go-Breadcrumb" aria-label="Breadcrumb">
    <ol>
      <li>
        <a href="/vuln" data-gtmc="breadcrumb link">Vulnerability Database</a>
      </li>
      <li>
        <a href="/vuln/list" data-gtmc="breadcrumb link">All Reports</a>
      </li>
      <li>
        <a href="#" data-gtmc="breadcrumb link" aria-current="location">{{.Entry.ID}}</a>
      </li>
    </ol>
  </nav>
  <h1 class="Vuln-title">Vulnerability Report: {{.Entry.ID}}</h1>
  {{template "vuln-details" .Entry}}
  <div class="VulnEntry">
    {{template "affected" .AffectedPackages}}
    {{template "entry" .Entry}}
  </div>
{{end}}

{{define "affected"}}
  <h2>Affected Packages</h2>
  <table class="VulnEntry-table">
    <thead>
      <tr>
	<th>Package</th>
	<th>Affected Versions</th>
      </tr>
    </thead>
    <tbody>
      {{range .}}
	<tr>
	  <td><a href="/{{.Path}}">{{.Path}}</a></td>
	  <td>{{.Versions}}</td>
	</tr>
      {{end}}
    </tbody>
  </table>
{{end}}

{{define "entry"}}
  {{if .Aliases}}
    <h2>Aliases</h2>
    <ul>
      {{range .Aliases}}<li>{{.}}</li>{{end}}
    </ul>
  {{end}}
  {{if .References}}
    <h2>References</h2>
    <ul class="VulnEntry-referenceList">
      {{range .References}}<li><a href="{{.URL}}">{{.URL}}</a></li>{{end}}
    </ul>
  {{end}}
  <h2>Feedback</h2>
  <div>
    See anything missing or incorrect?
    <a target="_blank" href="https://github.com/golang/vulndb/issues/new?assignees=&labels=Needs+Triage%2CSuggested+Edit&template=suggest_edit.yaml&title=x%2Fvulndb%3A+suggestion+regarding+{{.ID}}&report={{.ID}}">
      Suggest an edit to this report.
    </a>
  </div>
{{end}}
