@cryptotaxi247 / infra / commits / 198217f3

Avoid colour indications on outdated channels

This removes the colour indicator from `Last updated` labels. For outdated channels this label is now always grey.

Marek Fajkus committed Jan 11, 2020 at 12:36 UTC 198217f34c5701fb4d53b4a814f264db6f2a9051
1 file changed +25 -14
delft/eris/status-page/status.js
+25 -14
@@ -169,12 +169,15 @@ init()
169 var m = moment.unix(update_times[channel]['update_time']);
170 jobset['update_time_relative'] = m.fromNow()
171 jobset['update_time_local'] = m.format()
172 - if (m > moment().subtract(3, 'days')) {
172 + // do not use color indications on outdated channels
173 + if (jobset['current']) {
174 + if (m > moment().subtract(3, 'days')) {
175 jobset['update_age'] = "success";
174 - } else if (m > moment().subtract(10, 'days')) {
176 + } else if (m > moment().subtract(10, 'days')) {
177 jobset['update_age'] = "warning";
176 - } else {
178 + } else {
179 jobset['update_age'] = "important";
180 + }
181 }
182 } else {
183 continue
@@ -191,29 +194,37 @@ init()
194 return data.map(record => {
195 var row = document.createElement('tr');
196 row.innerHTML = '<td class="channel" /><td><span class="age label"></span></td><td class="github"><a class="revision" /></td><td class="hydra"><a class="hydra-link" /></td><td class="status"></td>';
197 + var status = row.getElementsByClassName("status")[0];
198 +
199 if (record['current']) {
200 row.classList.add("current")
201 } else {
202 row.classList.add("stale")
198 - row.getElementsByClassName("status")[0].innerHTML += '<span class="label label-important">End of life</span>';
203 + status.innerHTML += '<span class="label label-important">End of life</span>';
204 }
205 row.getElementsByClassName("channel")[0].innerText = record['channel'];
206
202 - row.getElementsByClassName("age")[0].innerText = record['update_time_relative'];
203 - row.getElementsByClassName("age")[0].title = record['update_time_local'];
204 - row.getElementsByClassName("age")[0].classList.add("label-" + record['update_age']);
205 - row.getElementsByClassName("revision")[0].innerText = record['short_revision'];
206 - row.getElementsByClassName("revision")[0].href = record['github_url'];
207 + var date = row.getElementsByClassName("age")[0];
208 + date.innerText = record['update_time_relative'];
209 + date.title = record['update_time_local'];
210 + date.classList.add("label-" + record['update_age']);
211 +
212 + var revisions = row.getElementsByClassName("revision")[0];
213 + revisions.innerText = record['short_revision'];
214 + revisions.href = record['github_url'];
215 +
216 + var hydraLink = row.getElementsByClassName("hydra-link")[0];
217 + hydraLink.href = record['hydra_url'];
218 + hydraLink.innerText = [record['project'], record['jobset'], record['job']].join('/');
219
208 - row.getElementsByClassName("hydra-link")[0].href = record['hydra_url'];
209 - row.getElementsByClassName("hydra-link")[0].innerText = [record['project'], record['jobset'], record['job']].join('/');
210 - row.getElementsByClassName("hydra")[0].style.backgroundImage = "linear-gradient(to right, " +
220 + var hydra = row.getElementsByClassName("hydra")[0];
221 + hydra.style.backgroundImage = "linear-gradient(to right, " +
222 (record['job_history'].map(val => val ? "#b5ffb5" : "#ff9e9e")).join(", ") +
223 ")";
213 - row.getElementsByClassName("hydra")[0].title = `The Hydra job's state over time, since ${record['oldest_status_relative']}`;
224 + hydra.title = `The Hydra job's state over time, since ${record['oldest_status_relative']}`;
225
226 if (record['job_history'][record['job_history'].length - 1] == 0) {
216 - row.getElementsByClassName("status")[0].innerHTML += '<span class="label label-important">Build problem</span>';
227 + status.innerHTML += '<span class="label label-important">Build problem</span>';
228
229 }
230 return row;