summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--fixtures/Host.Boots.HTML.expected11
-rw-r--r--fixtures/Host.Downtime.HTML.expected11
-rw-r--r--fixtures/Host.Lifespan.HTML.expected11
-rw-r--r--fixtures/Host.Score.HTML.expected11
-rw-r--r--fixtures/Host.Uptime.HTML.expected11
-rw-r--r--fixtures/Kernel.Boots.HTML.expected11
-rw-r--r--fixtures/Kernel.Score.HTML.expected11
-rw-r--r--fixtures/Kernel.Uptime.HTML.expected11
-rw-r--r--fixtures/KernelMajor.Boots.HTML.expected11
-rw-r--r--fixtures/KernelMajor.Score.HTML.expected11
-rw-r--r--fixtures/KernelMajor.Uptime.HTML.expected11
-rw-r--r--fixtures/KernelName.Boots.HTML.expected11
-rw-r--r--fixtures/KernelName.Score.HTML.expected11
-rw-r--r--fixtures/KernelName.Uptime.HTML.expected11
-rw-r--r--internal/daemon/daemon.go2
-rw-r--r--internal/goprecords/order.go21
-rw-r--r--internal/goprecords/order_test.go30
-rw-r--r--internal/goprecords/report_format.go19
-rw-r--r--internal/version/version.go2
19 files changed, 182 insertions, 46 deletions
diff --git a/fixtures/Host.Boots.HTML.expected b/fixtures/Host.Boots.HTML.expected
index e0b78a3..225f751 100644
--- a/fixtures/Host.Boots.HTML.expected
+++ b/fixtures/Host.Boots.HTML.expected
@@ -2,11 +2,18 @@
<html lang="en">
<head>
<meta charset="utf-8">
+<link rel="shortcut icon" type="image/gif" href="https://foo.zone/favicon.ico" />
+<link rel="stylesheet" href="https://foo.zone/style.css" />
<title>Top 3 Boots&#39;s by Host</title>
</head>
<body>
-<h1>Top 3 Boots&#39;s by Host</h1>
-<p>Boots is the total number of host boots over the entire lifespan.</p>
+<p class="header">
+<a href="/">Dashboard</a> | <a href="https://foo.zone">foo.zone</a> | <a class="textlink" href="/report?OutputFormat=HTML&amp;limit=3">Report API</a>
+</p>
+<h1 style="display: inline">Top 3 Boots&#39;s by Host</h1><br />
+<br />
+<span class="quote">Boots is the total number of host boots over the entire lifespan.</span><br />
+<br />
<pre>+-----+----------------+-------+-----------------------------+
| Pos | Host | Boots | Last Kernel |
+-----+----------------+-------+-----------------------------+
diff --git a/fixtures/Host.Downtime.HTML.expected b/fixtures/Host.Downtime.HTML.expected
index 72bdd43..fcb1569 100644
--- a/fixtures/Host.Downtime.HTML.expected
+++ b/fixtures/Host.Downtime.HTML.expected
@@ -2,11 +2,18 @@
<html lang="en">
<head>
<meta charset="utf-8">
+<link rel="shortcut icon" type="image/gif" href="https://foo.zone/favicon.ico" />
+<link rel="stylesheet" href="https://foo.zone/style.css" />
<title>Top 3 Downtime&#39;s by Host</title>
</head>
<body>
-<h1>Top 3 Downtime&#39;s by Host</h1>
-<p>Downtime is the total downtime of a host over the entire lifespan.</p>
+<p class="header">
+<a href="/">Dashboard</a> | <a href="https://foo.zone">foo.zone</a> | <a class="textlink" href="/report?OutputFormat=HTML&amp;limit=3">Report API</a>
+</p>
+<h1 style="display: inline">Top 3 Downtime&#39;s by Host</h1><br />
+<br />
+<span class="quote">Downtime is the total downtime of a host over the entire lifespan.</span><br />
+<br />
<pre>+-----+----------------+-----------------------------+--------------------------+
| Pos | Host | Downtime | Last Kernel |
+-----+----------------+-----------------------------+--------------------------+
diff --git a/fixtures/Host.Lifespan.HTML.expected b/fixtures/Host.Lifespan.HTML.expected
index 12bfe4d..ea34115 100644
--- a/fixtures/Host.Lifespan.HTML.expected
+++ b/fixtures/Host.Lifespan.HTML.expected
@@ -2,11 +2,18 @@
<html lang="en">
<head>
<meta charset="utf-8">
+<link rel="shortcut icon" type="image/gif" href="https://foo.zone/favicon.ico" />
+<link rel="stylesheet" href="https://foo.zone/style.css" />
<title>Top 3 Lifespan&#39;s by Host</title>
</head>
<body>
-<h1>Top 3 Lifespan&#39;s by Host</h1>
-<p>Lifespan is the total uptime + the total downtime of a host.</p>
+<p class="header">
+<a href="/">Dashboard</a> | <a href="https://foo.zone">foo.zone</a> | <a class="textlink" href="/report?OutputFormat=HTML&amp;limit=3">Report API</a>
+</p>
+<h1 style="display: inline">Top 3 Lifespan&#39;s by Host</h1><br />
+<br />
+<span class="quote">Lifespan is the total uptime + the total downtime of a host.</span><br />
+<br />
<pre>+-----+----------------+----------------------------+--------------------------+
| Pos | Host | Lifespan | Last Kernel |
+-----+----------------+----------------------------+--------------------------+
diff --git a/fixtures/Host.Score.HTML.expected b/fixtures/Host.Score.HTML.expected
index e42adf9..61c77d8 100644
--- a/fixtures/Host.Score.HTML.expected
+++ b/fixtures/Host.Score.HTML.expected
@@ -2,11 +2,18 @@
<html lang="en">
<head>
<meta charset="utf-8">
+<link rel="shortcut icon" type="image/gif" href="https://foo.zone/favicon.ico" />
+<link rel="stylesheet" href="https://foo.zone/style.css" />
<title>Top 3 Score&#39;s by Host</title>
</head>
<body>
-<h1>Top 3 Score&#39;s by Host</h1>
-<p>Score is calculated by combining all other metrics.</p>
+<p class="header">
+<a href="/">Dashboard</a> | <a href="https://foo.zone">foo.zone</a> | <a class="textlink" href="/report?OutputFormat=HTML&amp;limit=3">Report API</a>
+</p>
+<h1 style="display: inline">Top 3 Score&#39;s by Host</h1><br />
+<br />
+<span class="quote">Score is calculated by combining all other metrics.</span><br />
+<br />
<pre>+-----+---------+-------+-----------------------------------+
| Pos | Host | Score | Last Kernel |
+-----+---------+-------+-----------------------------------+
diff --git a/fixtures/Host.Uptime.HTML.expected b/fixtures/Host.Uptime.HTML.expected
index 484aef6..2c38c84 100644
--- a/fixtures/Host.Uptime.HTML.expected
+++ b/fixtures/Host.Uptime.HTML.expected
@@ -2,11 +2,18 @@
<html lang="en">
<head>
<meta charset="utf-8">
+<link rel="shortcut icon" type="image/gif" href="https://foo.zone/favicon.ico" />
+<link rel="stylesheet" href="https://foo.zone/style.css" />
<title>Top 3 Uptime&#39;s by Host</title>
</head>
<body>
-<h1>Top 3 Uptime&#39;s by Host</h1>
-<p>Uptime is the total uptime of a host over the entire lifespan.</p>
+<p class="header">
+<a href="/">Dashboard</a> | <a href="https://foo.zone">foo.zone</a> | <a class="textlink" href="/report?OutputFormat=HTML&amp;limit=3">Report API</a>
+</p>
+<h1 style="display: inline">Top 3 Uptime&#39;s by Host</h1><br />
+<br />
+<span class="quote">Uptime is the total uptime of a host over the entire lifespan.</span><br />
+<br />
<pre>+-----+---------+-----------------------------+-----------------------------------+
| Pos | Host | Uptime | Last Kernel |
+-----+---------+-----------------------------+-----------------------------------+
diff --git a/fixtures/Kernel.Boots.HTML.expected b/fixtures/Kernel.Boots.HTML.expected
index d4e7435..e748baf 100644
--- a/fixtures/Kernel.Boots.HTML.expected
+++ b/fixtures/Kernel.Boots.HTML.expected
@@ -2,11 +2,18 @@
<html lang="en">
<head>
<meta charset="utf-8">
+<link rel="shortcut icon" type="image/gif" href="https://foo.zone/favicon.ico" />
+<link rel="stylesheet" href="https://foo.zone/style.css" />
<title>Top 3 Boots&#39;s by Kernel</title>
</head>
<body>
-<h1>Top 3 Boots&#39;s by Kernel</h1>
-<p>Boots is the total number of host boots over the entire lifespan.</p>
+<p class="header">
+<a href="/">Dashboard</a> | <a href="https://foo.zone">foo.zone</a> | <a class="textlink" href="/report?OutputFormat=HTML&amp;limit=3">Report API</a>
+</p>
+<h1 style="display: inline">Top 3 Boots&#39;s by Kernel</h1><br />
+<br />
+<span class="quote">Boots is the total number of host boots over the entire lifespan.</span><br />
+<br />
<pre>+-----+------------------------------+-------+
| Pos | Kernel | Boots |
+-----+------------------------------+-------+
diff --git a/fixtures/Kernel.Score.HTML.expected b/fixtures/Kernel.Score.HTML.expected
index 2446cfe..0aaa7ee 100644
--- a/fixtures/Kernel.Score.HTML.expected
+++ b/fixtures/Kernel.Score.HTML.expected
@@ -2,11 +2,18 @@
<html lang="en">
<head>
<meta charset="utf-8">
+<link rel="shortcut icon" type="image/gif" href="https://foo.zone/favicon.ico" />
+<link rel="stylesheet" href="https://foo.zone/style.css" />
<title>Top 3 Score&#39;s by Kernel</title>
</head>
<body>
-<h1>Top 3 Score&#39;s by Kernel</h1>
-<p>Score is calculated by combining all other metrics.</p>
+<p class="header">
+<a href="/">Dashboard</a> | <a href="https://foo.zone">foo.zone</a> | <a class="textlink" href="/report?OutputFormat=HTML&amp;limit=3">Report API</a>
+</p>
+<h1 style="display: inline">Top 3 Score&#39;s by Kernel</h1><br />
+<br />
+<span class="quote">Score is calculated by combining all other metrics.</span><br />
+<br />
<pre>+-----+------------------------------------+-------+
| Pos | Kernel | Score |
+-----+------------------------------------+-------+
diff --git a/fixtures/Kernel.Uptime.HTML.expected b/fixtures/Kernel.Uptime.HTML.expected
index d57421a..84b1691 100644
--- a/fixtures/Kernel.Uptime.HTML.expected
+++ b/fixtures/Kernel.Uptime.HTML.expected
@@ -2,11 +2,18 @@
<html lang="en">
<head>
<meta charset="utf-8">
+<link rel="shortcut icon" type="image/gif" href="https://foo.zone/favicon.ico" />
+<link rel="stylesheet" href="https://foo.zone/style.css" />
<title>Top 3 Uptime&#39;s by Kernel</title>
</head>
<body>
-<h1>Top 3 Uptime&#39;s by Kernel</h1>
-<p>Uptime is the total uptime of a host over the entire lifespan.</p>
+<p class="header">
+<a href="/">Dashboard</a> | <a href="https://foo.zone">foo.zone</a> | <a class="textlink" href="/report?OutputFormat=HTML&amp;limit=3">Report API</a>
+</p>
+<h1 style="display: inline">Top 3 Uptime&#39;s by Kernel</h1><br />
+<br />
+<span class="quote">Uptime is the total uptime of a host over the entire lifespan.</span><br />
+<br />
<pre>+-----+------------------------------------+-----------------------------+
| Pos | Kernel | Uptime |
+-----+------------------------------------+-----------------------------+
diff --git a/fixtures/KernelMajor.Boots.HTML.expected b/fixtures/KernelMajor.Boots.HTML.expected
index 298f5d0..d639641 100644
--- a/fixtures/KernelMajor.Boots.HTML.expected
+++ b/fixtures/KernelMajor.Boots.HTML.expected
@@ -2,11 +2,18 @@
<html lang="en">
<head>
<meta charset="utf-8">
+<link rel="shortcut icon" type="image/gif" href="https://foo.zone/favicon.ico" />
+<link rel="stylesheet" href="https://foo.zone/style.css" />
<title>Top 3 Boots&#39;s by KernelMajor</title>
</head>
<body>
-<h1>Top 3 Boots&#39;s by KernelMajor</h1>
-<p>Boots is the total number of host boots over the entire lifespan.</p>
+<p class="header">
+<a href="/">Dashboard</a> | <a href="https://foo.zone">foo.zone</a> | <a class="textlink" href="/report?OutputFormat=HTML&amp;limit=3">Report API</a>
+</p>
+<h1 style="display: inline">Top 3 Boots&#39;s by KernelMajor</h1><br />
+<br />
+<span class="quote">Boots is the total number of host boots over the entire lifespan.</span><br />
+<br />
<pre>+-----+----------------+-------+
| Pos | KernelMajor | Boots |
+-----+----------------+-------+
diff --git a/fixtures/KernelMajor.Score.HTML.expected b/fixtures/KernelMajor.Score.HTML.expected
index 9aa35d0..fc5362c 100644
--- a/fixtures/KernelMajor.Score.HTML.expected
+++ b/fixtures/KernelMajor.Score.HTML.expected
@@ -2,11 +2,18 @@
<html lang="en">
<head>
<meta charset="utf-8">
+<link rel="shortcut icon" type="image/gif" href="https://foo.zone/favicon.ico" />
+<link rel="stylesheet" href="https://foo.zone/style.css" />
<title>Top 3 Score&#39;s by KernelMajor</title>
</head>
<body>
-<h1>Top 3 Score&#39;s by KernelMajor</h1>
-<p>Score is calculated by combining all other metrics.</p>
+<p class="header">
+<a href="/">Dashboard</a> | <a href="https://foo.zone">foo.zone</a> | <a class="textlink" href="/report?OutputFormat=HTML&amp;limit=3">Report API</a>
+</p>
+<h1 style="display: inline">Top 3 Score&#39;s by KernelMajor</h1><br />
+<br />
+<span class="quote">Score is calculated by combining all other metrics.</span><br />
+<br />
<pre>+-----+----------------+-------+
| Pos | KernelMajor | Score |
+-----+----------------+-------+
diff --git a/fixtures/KernelMajor.Uptime.HTML.expected b/fixtures/KernelMajor.Uptime.HTML.expected
index c77248e..6608613 100644
--- a/fixtures/KernelMajor.Uptime.HTML.expected
+++ b/fixtures/KernelMajor.Uptime.HTML.expected
@@ -2,11 +2,18 @@
<html lang="en">
<head>
<meta charset="utf-8">
+<link rel="shortcut icon" type="image/gif" href="https://foo.zone/favicon.ico" />
+<link rel="stylesheet" href="https://foo.zone/style.css" />
<title>Top 3 Uptime&#39;s by KernelMajor</title>
</head>
<body>
-<h1>Top 3 Uptime&#39;s by KernelMajor</h1>
-<p>Uptime is the total uptime of a host over the entire lifespan.</p>
+<p class="header">
+<a href="/">Dashboard</a> | <a href="https://foo.zone">foo.zone</a> | <a class="textlink" href="/report?OutputFormat=HTML&amp;limit=3">Report API</a>
+</p>
+<h1 style="display: inline">Top 3 Uptime&#39;s by KernelMajor</h1><br />
+<br />
+<span class="quote">Uptime is the total uptime of a host over the entire lifespan.</span><br />
+<br />
<pre>+-----+----------------+-----------------------------+
| Pos | KernelMajor | Uptime |
+-----+----------------+-----------------------------+
diff --git a/fixtures/KernelName.Boots.HTML.expected b/fixtures/KernelName.Boots.HTML.expected
index 298d9b7..37c38a1 100644
--- a/fixtures/KernelName.Boots.HTML.expected
+++ b/fixtures/KernelName.Boots.HTML.expected
@@ -2,11 +2,18 @@
<html lang="en">
<head>
<meta charset="utf-8">
+<link rel="shortcut icon" type="image/gif" href="https://foo.zone/favicon.ico" />
+<link rel="stylesheet" href="https://foo.zone/style.css" />
<title>Top 3 Boots&#39;s by KernelName</title>
</head>
<body>
-<h1>Top 3 Boots&#39;s by KernelName</h1>
-<p>Boots is the total number of host boots over the entire lifespan.</p>
+<p class="header">
+<a href="/">Dashboard</a> | <a href="https://foo.zone">foo.zone</a> | <a class="textlink" href="/report?OutputFormat=HTML&amp;limit=3">Report API</a>
+</p>
+<h1 style="display: inline">Top 3 Boots&#39;s by KernelName</h1><br />
+<br />
+<span class="quote">Boots is the total number of host boots over the entire lifespan.</span><br />
+<br />
<pre>+-----+------------+-------+
| Pos | KernelName | Boots |
+-----+------------+-------+
diff --git a/fixtures/KernelName.Score.HTML.expected b/fixtures/KernelName.Score.HTML.expected
index 483414a..eae7811 100644
--- a/fixtures/KernelName.Score.HTML.expected
+++ b/fixtures/KernelName.Score.HTML.expected
@@ -2,11 +2,18 @@
<html lang="en">
<head>
<meta charset="utf-8">
+<link rel="shortcut icon" type="image/gif" href="https://foo.zone/favicon.ico" />
+<link rel="stylesheet" href="https://foo.zone/style.css" />
<title>Top 3 Score&#39;s by KernelName</title>
</head>
<body>
-<h1>Top 3 Score&#39;s by KernelName</h1>
-<p>Score is calculated by combining all other metrics.</p>
+<p class="header">
+<a href="/">Dashboard</a> | <a href="https://foo.zone">foo.zone</a> | <a class="textlink" href="/report?OutputFormat=HTML&amp;limit=3">Report API</a>
+</p>
+<h1 style="display: inline">Top 3 Score&#39;s by KernelName</h1><br />
+<br />
+<span class="quote">Score is calculated by combining all other metrics.</span><br />
+<br />
<pre>+-----+------------+-------+
| Pos | KernelName | Score |
+-----+------------+-------+
diff --git a/fixtures/KernelName.Uptime.HTML.expected b/fixtures/KernelName.Uptime.HTML.expected
index 862be60..2c0bcf4 100644
--- a/fixtures/KernelName.Uptime.HTML.expected
+++ b/fixtures/KernelName.Uptime.HTML.expected
@@ -2,11 +2,18 @@
<html lang="en">
<head>
<meta charset="utf-8">
+<link rel="shortcut icon" type="image/gif" href="https://foo.zone/favicon.ico" />
+<link rel="stylesheet" href="https://foo.zone/style.css" />
<title>Top 3 Uptime&#39;s by KernelName</title>
</head>
<body>
-<h1>Top 3 Uptime&#39;s by KernelName</h1>
-<p>Uptime is the total uptime of a host over the entire lifespan.</p>
+<p class="header">
+<a href="/">Dashboard</a> | <a href="https://foo.zone">foo.zone</a> | <a class="textlink" href="/report?OutputFormat=HTML&amp;limit=3">Report API</a>
+</p>
+<h1 style="display: inline">Top 3 Uptime&#39;s by KernelName</h1><br />
+<br />
+<span class="quote">Uptime is the total uptime of a host over the entire lifespan.</span><br />
+<br />
<pre>+-----+------------+-----------------------------+
| Pos | KernelName | Uptime |
+-----+------------+-----------------------------+
diff --git a/internal/daemon/daemon.go b/internal/daemon/daemon.go
index 63d80d4..e4f07f6 100644
--- a/internal/daemon/daemon.go
+++ b/internal/daemon/daemon.go
@@ -201,7 +201,7 @@ func root(statsDir string) http.HandlerFunc {
Limit: 20,
OutputFormat: goprecords.FormatHTML,
All: true,
- IncludeKernel: true,
+ IncludeKernel: false,
}
var buf bytes.Buffer
if err := goprecords.WriteReports(&buf, aggregates, cfg); err != nil {
diff --git a/internal/goprecords/order.go b/internal/goprecords/order.go
index a20e5f9..6397e06 100644
--- a/internal/goprecords/order.go
+++ b/internal/goprecords/order.go
@@ -83,11 +83,20 @@ func StatsOrderList(statsOrder string) ([]CategoryMetric, error) {
}
func defaultStatsOrder() []CategoryMetric {
- var out []CategoryMetric
- for _, c := range []Category{CategoryHost, CategoryKernel, CategoryKernelMajor, CategoryKernelName} {
- for _, m := range []Metric{MetricBoots, MetricUptime, MetricScore, MetricDowntime, MetricLifespan} {
- out = append(out, CategoryMetric{c, m})
- }
+ return []CategoryMetric{
+ {CategoryHost, MetricUptime},
+ {CategoryHost, MetricLifespan},
+ {CategoryHost, MetricDowntime},
+ {CategoryHost, MetricBoots},
+ {CategoryHost, MetricScore},
+ {CategoryKernelMajor, MetricBoots},
+ {CategoryKernelMajor, MetricUptime},
+ {CategoryKernelMajor, MetricScore},
+ {CategoryKernelName, MetricBoots},
+ {CategoryKernelName, MetricUptime},
+ {CategoryKernelName, MetricScore},
+ {CategoryKernel, MetricBoots},
+ {CategoryKernel, MetricUptime},
+ {CategoryKernel, MetricScore},
}
- return out
}
diff --git a/internal/goprecords/order_test.go b/internal/goprecords/order_test.go
index c085723..0a7d5cb 100644
--- a/internal/goprecords/order_test.go
+++ b/internal/goprecords/order_test.go
@@ -50,15 +50,34 @@ func TestParseStatsOrder(t *testing.T) {
}
func TestStatsOrderList(t *testing.T) {
- // Empty string returns default order (all category×metric pairs).
+ wantDefaultPrefix := []CategoryMetric{
+ {CategoryHost, MetricUptime},
+ {CategoryHost, MetricLifespan},
+ {CategoryHost, MetricDowntime},
+ {CategoryHost, MetricBoots},
+ {CategoryHost, MetricScore},
+ {CategoryKernelMajor, MetricBoots},
+ {CategoryKernelMajor, MetricUptime},
+ {CategoryKernelMajor, MetricScore},
+ {CategoryKernelName, MetricBoots},
+ {CategoryKernelName, MetricUptime},
+ {CategoryKernelName, MetricScore},
+ {CategoryKernel, MetricBoots},
+ {CategoryKernel, MetricUptime},
+ {CategoryKernel, MetricScore},
+ }
got, err := StatsOrderList("")
if err != nil {
t.Fatalf("StatsOrderList(\"\"): %v", err)
}
- if len(got) == 0 {
- t.Error("StatsOrderList(\"\"): got empty order")
+ if len(got) != len(wantDefaultPrefix) {
+ t.Fatalf("StatsOrderList(\"\"): len=%d want %d", len(got), len(wantDefaultPrefix))
+ }
+ for i := range wantDefaultPrefix {
+ if got[i] != wantDefaultPrefix[i] {
+ t.Errorf("StatsOrderList(\"\")[%d] = %v; want %v", i, got[i], wantDefaultPrefix[i])
+ }
}
- // Custom order: Host:Uptime first, then rest of default.
got, err = StatsOrderList("Host:Uptime")
if err != nil {
t.Fatalf("StatsOrderList(\"Host:Uptime\"): %v", err)
@@ -69,4 +88,7 @@ func TestStatsOrderList(t *testing.T) {
if got[0].Category != CategoryHost || got[0].Metric != MetricUptime {
t.Errorf("StatsOrderList(\"Host:Uptime\")[0] = %v; want Host:Uptime", got[0])
}
+ if got[1] != (CategoryMetric{CategoryHost, MetricLifespan}) {
+ t.Errorf("StatsOrderList(\"Host:Uptime\")[1] = %v; want Host:Lifespan", got[1])
+ }
}
diff --git a/internal/goprecords/report_format.go b/internal/goprecords/report_format.go
index 0d5e4dd..eb2c49c 100644
--- a/internal/goprecords/report_format.go
+++ b/internal/goprecords/report_format.go
@@ -44,19 +44,26 @@ func (r reportBuilder) formatReportHTML(rows []tableRow, hasLastKernel bool) str
desc := MetricDescription(r.metric)
var b strings.Builder
- b.WriteString("<!DOCTYPE html>\n<html lang=\"en\">\n<head>\n<meta charset=\"utf-8\">\n<title>")
+ b.WriteString("<!DOCTYPE html>\n<html lang=\"en\">\n<head>\n<meta charset=\"utf-8\">\n")
+ b.WriteString("<link rel=\"shortcut icon\" type=\"image/gif\" href=\"https://foo.zone/favicon.ico\" />\n")
+ b.WriteString("<link rel=\"stylesheet\" href=\"https://foo.zone/style.css\" />\n<title>")
b.WriteString(template.HTMLEscapeString(title))
- b.WriteString("</title>\n</head>\n<body>\n<h")
+ b.WriteString("</title>\n</head>\n<body>\n")
+ b.WriteString("<p class=\"header\">\n")
+ b.WriteString("<a href=\"/\">Dashboard</a> | <a href=\"https://foo.zone\">foo.zone</a> | ")
+ b.WriteString("<a class=\"textlink\" href=\"/report?OutputFormat=HTML&amp;limit=")
+ b.WriteString(strconv.FormatUint(uint64(r.limit), 10))
+ b.WriteString("\">Report API</a>\n</p>\n<h")
b.WriteString(strconv.Itoa(hl))
- b.WriteString(">")
+ b.WriteString(" style=\"display: inline\">")
b.WriteString(template.HTMLEscapeString(title))
b.WriteString("</h")
b.WriteString(strconv.Itoa(hl))
- b.WriteString(">\n")
+ b.WriteString("><br />\n<br />\n")
if desc != "" {
- b.WriteString("<p>")
+ b.WriteString("<span class=\"quote\">")
b.WriteString(template.HTMLEscapeString(desc))
- b.WriteString("</p>\n")
+ b.WriteString("</span><br />\n<br />\n")
}
b.WriteString("<pre>")
b.WriteString(template.HTMLEscapeString(ascii))
diff --git a/internal/version/version.go b/internal/version/version.go
index 83b3aa0..371f9d1 100644
--- a/internal/version/version.go
+++ b/internal/version/version.go
@@ -1,4 +1,4 @@
package version
// Tag is the application release version.
-const Tag = "0.3.1"
+const Tag = "0.4.0"