summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--cmd/generate/imworkingon.html.tmpl2
-rw-r--r--cmd/generate/src_contribs.go13
-rw-r--r--public/imworkingon/imworkingon.scss5
3 files changed, 19 insertions, 1 deletions
diff --git a/cmd/generate/imworkingon.html.tmpl b/cmd/generate/imworkingon.html.tmpl
index 9a1957f..781474b 100644
--- a/cmd/generate/imworkingon.html.tmpl
+++ b/cmd/generate/imworkingon.html.tmpl
@@ -27,7 +27,7 @@
<section id="contribs">
{{- range $contrib := .Contribs }}
{{ $upstream := $contrib | getUpstream }}
- <article class="contrib">
+ <article class="contrib {{ $contrib.StatusClass }}-contrib">
<div class="contrib-upstream-name"><a class="em" href="{{ index $upstream.URLs 0 }}">{{ $upstream.Name }}</a></div>
<div class="contrib-upstream-desc">{{ $upstream.Desc | md2html }}</div>
<div class="contrib-urls">
diff --git a/cmd/generate/src_contribs.go b/cmd/generate/src_contribs.go
index 46683d3..291d47b 100644
--- a/cmd/generate/src_contribs.go
+++ b/cmd/generate/src_contribs.go
@@ -20,6 +20,7 @@ type Contribution struct {
SubmittedAt time.Time `json:"submitted-at"`
LastUpdatedAt time.Time `json:"last-updated-at"`
Status string `json:"status"`
+ StatusClass string `json:"-"`
}
func ReadContribs(filename string) ([]Contribution, error) {
@@ -55,6 +56,18 @@ func (c *Contribution) Fill() error {
return err
}
}
+ switch {
+ case strings.Contains(c.Status, "open"):
+ c.StatusClass = "open"
+ case strings.Contains(c.Status, "merged"):
+ c.StatusClass = "merged"
+ case strings.Contains(c.Status, "released") || strings.Contains(c.Status, "deployed"):
+ c.StatusClass = "released"
+ case strings.Contains(c.Status, "closed"):
+ c.StatusClass = "closed"
+ default:
+ return fmt.Errorf("unrecognized status string: %q", c.Status)
+ }
return nil
}
diff --git a/public/imworkingon/imworkingon.scss b/public/imworkingon/imworkingon.scss
index adeac7c..b905bb9 100644
--- a/public/imworkingon/imworkingon.scss
+++ b/public/imworkingon/imworkingon.scss
@@ -78,4 +78,9 @@ article.contrib {
div.contrib-desc {
grid-area: desc;
}
+
+ &.closed-contrib div.contrib-status { background-color: #cf222e; color: white; }
+ &.open-contrib div.contrib-status { background-color: #d3ab3a; color: black; }
+ &.merged-contrib div.contrib-status { background-color: #1f883d; color: white; }
+ &.released-contrib div.contrib-status { background-color: #1f883d; color: white; }
}