| Index: Tools/GardeningServer/scripts/ui.js
|
| diff --git a/Tools/GardeningServer/scripts/ui.js b/Tools/GardeningServer/scripts/ui.js
|
| index 7907b37d682c271365fc66f49d025c065807528f..1cdb4a1ff2916cc174035602291caa91d735a8d6 100644
|
| --- a/Tools/GardeningServer/scripts/ui.js
|
| +++ b/Tools/GardeningServer/scripts/ui.js
|
| @@ -351,10 +351,26 @@ ui.StatusArea = base.extends('div', {
|
| });
|
|
|
| ui.revisionDetails = base.extends('span', {
|
| - updateUI: function() {
|
| + // We only support 2 levels of visual escalation levels: warning and critical.
|
| + warnRollRevisionSpanThreshold: 45,
|
| + criticalRollRevisionSpanThreshold: 80,
|
| + classNameForUrgencyLevel: function(rollRevisionSpan) {
|
| + if (rollRevisionSpan < this.criticalRollRevisionSpanThreshold)
|
| + return "warning";
|
| + return "critical";
|
| + },
|
| + updateUI: function(totRevision) {
|
| this.appendChild(document.createElement("br"));
|
| this.appendChild(document.createTextNode('Last roll is to '));
|
| this.appendChild(ui.createLinkNode(trac.changesetURL(this.lastRolledRevision), this.lastRolledRevision));
|
| + var rollRevisionSpan = totRevision - this.lastRolledRevision;
|
| + // Don't clutter the UI if we haven't run behind.
|
| + if (rollRevisionSpan > this.warnRollRevisionSpanThreshold) {
|
| + var wrapper = document.createElement("span");
|
| + wrapper.className = this.classNameForUrgencyLevel(rollRevisionSpan);
|
| + wrapper.appendChild(document.createTextNode("(" + rollRevisionSpan + " revisions behind)"));
|
| + this.appendChild(wrapper);
|
| + }
|
| this.appendChild(document.createTextNode(', current autoroll '));
|
| if (this.roll) {
|
| var linkText = "" + this.roll.fromRevision + ":" + this.roll.toRevision;
|
| @@ -424,7 +440,7 @@ ui.revisionDetails = base.extends('span', {
|
| Promise.all([checkout.lastBlinkRollRevision(), rollbot.fetchCurrentRoll()]).then(function(results) {
|
| theSpan.lastRolledRevision = results[0];
|
| theSpan.roll = results[1];
|
| - theSpan.updateUI();
|
| + theSpan.updateUI(totRevision);
|
| });
|
| }
|
| });
|
|
|