aboutsummaryrefslogtreecommitdiff
path: root/layouts
diff options
context:
space:
mode:
Diffstat (limited to 'layouts')
-rw-r--r--layouts/_default/list.html28
-rw-r--r--layouts/index.json2
-rw-r--r--layouts/index.svg44
-rw-r--r--layouts/partials/index/components.html8
-rw-r--r--layouts/partials/js.html2
-rw-r--r--layouts/partials/meta.html2
6 files changed, 79 insertions, 7 deletions
diff --git a/layouts/_default/list.html b/layouts/_default/list.html
index b8c14c6..8d80798 100644
--- a/layouts/_default/list.html
+++ b/layouts/_default/list.html
@@ -18,6 +18,34 @@
{{ end }}
{{ end }}
+
+ <!-- Average downtime -->
+ {{ if not .Params.disableComplexCalculations }}
+ <p class="bold">
+ <em>
+ {{ $resolved := first 5 (where .Pages "Params.resolved" "=" true) }}
+
+ {{ if gt $resolved 0 }}
+ {{ $.Scratch.Set "counter" 0 }}
+ {{ range $resolved }}
+
+ {{ $t := (time .Params.ResolvedWhen) }}
+ {{ $timeDiff := (sub $t.Unix .Date.Unix) }}
+ {{ $diffInMin := (div $timeDiff 60) }}
+
+ {{ $.Scratch.Set "counter" (add ($.Scratch.Get "counter") $diffInMin) }}
+ {{ end }}
+
+ {{ T "averageSystemsDowntime" }}
+
+ {{ div ($.Scratch.Get "counter") (len $resolved) }}
+ {{ T "averageSystemsDowntimeSecondPart" }}
+ {{ end }}
+ </em>
+ </p>
+ {{ end }}
+
+
<small class="faded">{{ len .Pages }} {{ T "entries" }}, {{ T "newestToOldest" }}</small>
<div class="padding"></div>
diff --git a/layouts/index.json b/layouts/index.json
index ce40383..922137a 100644
--- a/layouts/index.json
+++ b/layouts/index.json
@@ -5,7 +5,7 @@
{{ $isDown := where $active "Params.severity" "=" "down" }}
{
"is": "index",
- "cStateVersion": "4.0.1",
+ "cStateVersion": "4.1.0",
"apiVersion": "1.0.0",
"title": "{{ .Site.Title }}",
"languageCodeHTML": "{{ .Site.LanguageCode }}",
diff --git a/layouts/index.svg b/layouts/index.svg
new file mode 100644
index 0000000..dbd6483
--- /dev/null
+++ b/layouts/index.svg
@@ -0,0 +1,44 @@
+{{ $incidents := where .Site.RegularPages "Params.section" "issue" -}}
+{{ $active := where $incidents "Params.resolved" "=" false -}}
+{{ $isNotice := where $active "Params.severity" "=" "notice" -}}
+{{ $isDisrupted := where $active "Params.severity" "=" "disrupted" -}}
+{{ $isDown := where $active "Params.severity" "=" "down" -}}
+{{ $shield_prefix := .Site.Title -}}
+{{ $status_text := T "thisIsOk" -}}
+{{ $status_color := .Site.Params.ok -}}
+{{ if $isDown -}}
+ {{ $status_text = T "thisIsDown" -}}
+ {{ $status_color = .Site.Params.down -}}
+{{ else if $isDisrupted -}}
+ {{ $status_text = T "thisIsDisrupted" -}}
+ {{ $status_color = .Site.Params.disrupted -}}
+{{ else if $isNotice -}}
+ {{ $status_text = T "thisIsNotice" -}}
+ {{ $status_color = .Site.Params.notice -}}
+{{ end -}}
+{{ $text_padding := 1 -}}
+{{ $left_text_lenght := $shield_prefix | strings.RuneCount -}}
+{{ $right_text_length := $status_text | strings.RuneCount -}}
+{{ $left_text_padding := $text_padding -}}
+{{ $right_box_padding := add (mul $text_padding 2) $left_text_lenght -}}
+{{ $right_text_padding := add $right_box_padding $text_padding -}}
+{{ $total_width := add (mul $text_padding 4) (add $left_text_lenght $right_text_length) -}}
+<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" height="2em" width="{{ $total_width }}ex" font-family="DejaVu Sans,Verdana,Geneva,sans-serif" font-size="11">
+ <linearGradient id="b" x2="0" y2="100%">
+ <stop offset="0" stop-color="#bbb" stop-opacity=".1"/>
+ <stop offset="1" stop-opacity=".1"/>
+ </linearGradient>
+ <clipPath id="a">
+ <rect width="100%" height="100%" rx="3" fill="#fff"/>
+ </clipPath>
+ <g clip-path="url(#a)" fill="#fff" >
+ <rect x="0" y="0" width="100%" height="100%" fill="#555" />
+ <rect x="{{ $right_box_padding }}ex" y="0" height="100%" width="100%" fill="{{ $status_color }}"/>
+ <rect x="0" y="0" width="100%" height="100%" fill="url(#b)"/>
+
+ <text x="{{ $left_text_padding }}ex" y="15" fill="#010101" fill-opacity=".3">{{ $shield_prefix }}</text>
+ <text x="{{ $left_text_padding }}ex" y="14">{{ $shield_prefix }}</text>
+ <text x="{{ $right_text_padding }}ex" y="15" fill="#010101" fill-opacity=".3">{{ $status_text }}</text>
+ <text x="{{ $right_text_padding }}ex" y="14">{{ $status_text }}</text>
+ </g>
+</svg>
diff --git a/layouts/partials/index/components.html b/layouts/partials/index/components.html
index 135349a..cfb1391 100644
--- a/layouts/partials/index/components.html
+++ b/layouts/partials/index/components.html
@@ -25,8 +25,8 @@
{{ if not .untitled }}
<div class="bold padding clicky category__head" onclick="toggleCategoryHead(this)">
<span class="hide-without-js">
- <span class="category__closed-marker">⯈</span>
- <span class="category__open-marker">⯆</span>
+ <span class="category__closed-marker">►</span>
+ <span class="category__open-marker">✕</span>
</span>
<b>
@@ -60,7 +60,7 @@
<div class="component" data-status="{{ if $thisIsDown }}down{{ else }}{{ if $thisIsDisrupted }}disrupted{{ else }}{{ if $thisIsNotice }}notice{{ else }}ok{{ end }}{{ end }}{{ end }}">
<a href="/affected/{{ .name | urlize }}" class="no-underline">
- {{ .name }}
+ {{ default .displayName .name }}
</a>
{{ with .description }}
@@ -98,4 +98,4 @@
</div>
{{ end }}
-</div> \ No newline at end of file
+</div>
diff --git a/layouts/partials/js.html b/layouts/partials/js.html
index 19e4a05..85f65f5 100644
--- a/layouts/partials/js.html
+++ b/layouts/partials/js.html
@@ -3,7 +3,7 @@
* Dev toolset
*/
- console.log('cState v4.0.1 - https://github.com/cstate/cstate');
+ console.log('cState v4.1.0 - https://github.com/cstate/cstate');
document.getElementsByTagName('html')[0].className = 'js';
/**
diff --git a/layouts/partials/meta.html b/layouts/partials/meta.html
index 6311441..9abb784 100644
--- a/layouts/partials/meta.html
+++ b/layouts/partials/meta.html
@@ -12,7 +12,7 @@
{{ range .AlternativeOutputFormats -}}
{{ printf `<link rel="%s" type="%s" href="%s" title="%s" />` .Rel .MediaType.Type .Permalink $.Site.Title | safeHTML }}
{{ end -}}
- <meta name="generator" content="cState v4.0.1 - https://github.com/cstate/cstate">
+ <meta name="generator" content="cState v4.1.0 - https://github.com/cstate/cstate">
<meta name="theme-color" content="{{ .Site.Params.brand }}">
<script>
var themeBrandColor = '{{ .Site.Params.brand }}';