Skip to content

Commit

Permalink
add christmas theme (#6)
Browse files Browse the repository at this point in the history
* add support for christmas bar

* turn on christmas lights
  • Loading branch information
nilic committed Dec 25, 2023
1 parent 87be027 commit accddcd
Show file tree
Hide file tree
Showing 2 changed files with 11 additions and 3 deletions.
8 changes: 8 additions & 0 deletions cmd/hntop/output.go
Original file line number Diff line number Diff line change
Expand Up @@ -28,6 +28,7 @@ const (

var templateFuncs = template.FuncMap{
"increment": increment,
"mod": mod,
"timeAgo": timeAgo,
}

Expand All @@ -36,15 +37,18 @@ type templateData struct {
ResultCount int
StartTime string
EndTime string
Christmas bool
Hits []htclient.Hit
}

func output(cCtx *cli.Context, q *htclient.Query, h *htclient.Hits) error {
t := time.Now()
var td = templateData{
FrontPage: q.FrontPage,
ResultCount: q.ResultCount,
StartTime: (time.Unix(q.StartTime, 0)).Format(time.RFC822),
EndTime: (time.Unix(q.EndTime, 0)).Format(time.RFC822),
Christmas: t.Month().String() == "December" && t.Day() == 25,
Hits: h.Hits,
}

Expand Down Expand Up @@ -98,6 +102,10 @@ func increment(i int) int {
return i + 1
}

func mod(i, j int) bool {
return i%j == 0
}

func timeAgo(t time.Time) string {
return timeago.New(t).Format()
}
6 changes: 3 additions & 3 deletions internal/mailer/templates/hntop.tmpl
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,7 @@

<body>
<center><table border="0" cellpadding="0" cellspacing="0" width="85%" bgcolor="#f6f6ef">
<tr><td bgcolor="#ff6600"><table border="0" cellpadding="0" cellspacing="0" width="100%" style="padding:2px"><tr>
<tr><td bgcolor="#{{if .Christmas}}cc1010{{else}}ff6600{{end}}"><table border="0" cellpadding="0" cellspacing="0" width="100%" style="padding:2px"><tr>
<td style="line-height:12pt; height:10px;"><span style="font-family:Verdana, Geneva, sans-serif; font-size: 10pt; color:#222222; line-height:12px;"><b style="margin-right: 5px;">{{if .FrontPage}}HN posts currently on the front page
{{else}}Top {{.ResultCount}} HN posts from {{.StartTime}} to {{.EndTime}}{{end}}</b>
</span></td></tr>
Expand All @@ -34,7 +34,7 @@
<tr title="" style="height:10px"></tr><tr><td><table border="0" cellpadding="0" cellspacing="0">
{{range $i, $e := .Hits}}
<tr>
<td align="right" valign="top" style="font-family:Verdana, Geneva, sans-serif; font-size: 10pt; color:#828282; overflow:hidden;">{{increment $i}}.</td> <td style="font-family:Verdana, Geneva, sans-serif; font-size: 10pt; color:#828282; overflow:hidden;">&nbsp;<a href="{{.ExternalURL}}">{{.Title}}</a>{{if ne .BaseExternalURL ""}}<span style="font-family:Verdana, Geneva, sans-serif; font-size: 8pt; color:#828282;"> (<a href="{{.FromURL}}">{{.BaseExternalURL}}</a>)</span>{{end}}</td></tr><tr><td></td><td style="font-family:Verdana, Geneva, sans-serif; font-size: 7pt; color:#828282;">
<td align="right" valign="top" style="font-family:Verdana, Geneva, sans-serif; font-size: 10pt; color:#828282; overflow:hidden;">{{if $.Christmas}}<font color="#{{if mod $i 2}}be2828{{else}}005a00{{end}}">{{increment $i}}.</font>{{else}}{{increment $i}}.{{end}}</td> <td style="font-family:Verdana, Geneva, sans-serif; font-size: 10pt; color:#828282; overflow:hidden;">&nbsp;<a href="{{.ExternalURL}}">{{.Title}}</a>{{if ne .BaseExternalURL ""}}<span style="font-family:Verdana, Geneva, sans-serif; font-size: 8pt; color:#828282;"> (<a href="{{.FromURL}}">{{.BaseExternalURL}}</a>)</span>{{end}}</td></tr><tr><td></td><td style="font-family:Verdana, Geneva, sans-serif; font-size: 7pt; color:#828282;">
&nbsp;{{.Points}} points by <a href="{{.UserURL}}" class="hnuser">{{.Author}}</a> <span class="age" title="{{.CreatedAt}}">{{timeAgo .CreatedAt}}</span> | <a href="{{.ItemURL}}">{{.NumComments}} comments</a>
</td></tr>
<tr class="smallspacer" style="height:5px"></tr>
Expand All @@ -43,7 +43,7 @@
</table>
</td></tr>
{{end}}
<tr><td><table width="100%" cellspacing="0" cellpadding="1"><tr><td bgcolor="#ff6600"></td></tr></table>
<tr><td><table width="100%" cellspacing="0" cellpadding="1"><tr><td bgcolor="#{{if .Christmas}}cc1010{{else}}ff6600{{end}}"></td></tr></table>
<center><span style="font-family:Verdana, Geneva, sans-serif; font-size: 8pt; color:#000000;">Powered by <a href="https://github.com/nilic/hntop-cli">hntop-cli</a></span>
</center></td></tr>
<tr class="smallspacer" style="height:5px"></tr>
Expand Down

0 comments on commit accddcd

Please sign in to comment.