Create version of timeSince that handles non-pointers

Useful for structs where we know we must have a value
This commit is contained in:
Eli Ribble 2026-01-21 17:50:16 +00:00
parent 2da6bba041
commit a4afa057e3
No known key found for this signature in database
6 changed files with 23 additions and 19 deletions

View file

@ -85,8 +85,8 @@
<tr>
<td><a href="/source/{{.ID}}">{{.ID|uuidShort}}</a></td>
<td>{{.Type}}</td>
<td>{{.LastInspected|timeSince}}</td>
<td>{{.LastTreated|timeSince}}</td>
<td>{{.LastInspected|timeSincePtr}}</td>
<td>{{.LastTreated|timeSincePtr}}</td>
</tr>
{{ end }}
</tbody>
@ -130,7 +130,7 @@
<tr>
<td><a href="/source/{{.LocationID}}">{{.LocationID|uuidShort}}</a></td>
<td>{{.Location}}</td>
<td>{{.Date|timeSince}}</td>
<td>{{.Date|timeSincePtr}}</td>
<td>{{.Action}}</td>
<td>{{.Notes}}</td>
</tr>
@ -208,7 +208,7 @@
{{ range .Treatments }}
<tr>
<td><a href="/source/{{.LocationID}}">{{.LocationID|uuidShort}}</a></td>
<td>{{.Date|timeSince}}</td>
<td>{{.Date|timeSincePtr}}</td>
<td>{{.Product}}</td>
<td>{{.Notes}}</td>
</tr>

View file

@ -46,7 +46,7 @@
</div>
<div class="flex-grow-1 ms-2">
<p class="mb-0 small">{{.Message}}</p>
<span class="text-muted x-small">{{.Time | timeSince}}</span>
<span class="text-muted x-small">{{.Time | timeSincePtr}}</span>
</div>
</div>
</a>

View file

@ -82,7 +82,7 @@ window.addEventListener("load", onLoad);
</p>
{{ else }}
<p class="last-refreshed mb-0">
<i class="fas fa-sync-alt me-2"></i>Last updated: <span id="last-refreshed-time">{{ .LastSync | timeSince }}</span>
<i class="fas fa-sync-alt me-2"></i>Last updated: <span id="last-refreshed-time">{{ .LastSync | timeSincePtr }}</span>
<button class="btn btn-sm btn-outline-primary ms-3">Refresh Data</button>
</p>
{{ end }}
@ -99,7 +99,7 @@ window.addEventListener("load", onLoad);
<i class="fas fa-clock"></i>
</div>
<h5 class="card-title">Last Data Refresh</h5>
<p class="metric-value">{{ .LastSync | timeSince }}</p>
<p class="metric-value">{{ .LastSync | timeSincePtr }}</p>
<!-- <p class="card-text text-muted">Last sync: 12:45 PM</p> -->
</div>
</div>
@ -207,7 +207,7 @@ window.addEventListener("load", onLoad);
<tbody>
{{ range $i, $sr := .RecentRequests }}
<tr>
<td>{{ $sr.Date | timeSince }}</td>
<td>{{ $sr.Date | timeSincePtr }}</td>
<td>Service Request</td>
<td>{{ $sr.Location }}</td>
<td><span class="badge bg-success">Completed</span></td>

View file

@ -147,11 +147,11 @@
<table class="info-table">
<tr>
<td class="info-label">Creation date</td>
<td>{{ .Source.Created|timeSince }}</td>
<td>{{ .Source.Created|timeSincePtr }}</td>
</tr>
<tr>
<td class="info-label">Edit date</td>
<td>{{ .Source.EditedAt|timeSince }}</td>
<td>{{ .Source.EditedAt|timeSincePtr }}</td>
</tr>
<tr>
<td class="info-label">Larva Inspect Interval</td>
@ -179,7 +179,7 @@
</tr>
<tr>
<td class="info-label">Last Inspect Date</td>
<td>{{ .Source.LastInspectionDate|timeSince }}</td>
<td>{{ .Source.LastInspectionDate|timeSincePtr }}</td>
</tr>
<tr>
<td class="info-label">Last Inspect Species</td>
@ -195,7 +195,7 @@
</tr>
<tr>
<td class="info-label">Last Treat Date</td>
<td>{{ .Source.LastTreatmentDate|timeSince }}</td>
<td>{{ .Source.LastTreatmentDate|timeSincePtr }}</td>
</tr>
<tr>
<td class="info-label">Last Treat Product</td>
@ -211,7 +211,7 @@
</tr>
<tr>
<td class="info-label">Next action date scheduled:</td>
<td>{{ .Source.NextActionScheduledDate|timeSince }}</td>
<td>{{ .Source.NextActionScheduledDate|timeSincePtr }}</td>
</tr>
<tr>
<td class="info-label">Treatment Cadence:</td>
@ -272,7 +272,7 @@
<tbody>
{{ range .Treatments }}
<tr>
<td>{{.Date|timeSince}}</td>
<td>{{.Date|timeSincePtr}}</td>
<td>{{.Product}}</td>
<td class="time-delta-neutral">{{.CadenceDelta|timeDelta}}</td>
<td>{{.Notes}}</td>
@ -304,7 +304,7 @@
<tbody>
{{ range .Inspections }}
<tr>
<td>{{.Date|timeSince}}</td>
<td>{{.Date|timeSincePtr}}</td>
<td>{{.Action}}</td>
<td>{{.Notes}}</td>
</tr>
@ -348,7 +348,7 @@
<!-- Trap 1 with multiple collections -->
{{ range .Counts }}
<tr>
<td>{{ .Ended|timeSince }}</td>
<td>{{ .Ended|timeSincePtr }}</td>
<td>{{ .Females }}</td>
<td>{{ .Males }}</td>
<td>{{ .Total }}</td>

View file

@ -115,7 +115,7 @@
<!-- Trap 1 with multiple collections -->
{{ range .Trap.Collections }}
<tr>
<td>{{ .EndDateTime|timeSince }}</td>
<td>{{ .EndDateTime|timeSincePtr }}</td>
<td>{{ .GlobalID }}</td>
<td>{{ .Count.Females }}</td>
<td>{{ .Count.Males }}</td>