diff --git a/settings/subpages/schedule.html b/settings/subpages/schedule.html
index a392660a..f5f0bd10 100644
--- a/settings/subpages/schedule.html
+++ b/settings/subpages/schedule.html
@@ -973,6 +973,8 @@
Time Schedule Preview
let showHeat = true;
let showCool = true;
let overlap = false;
+ let coolTrigger;
+ let heatTrigger;
let focus = 0;
var thermoIsBig = false;
let scaleFactor = 400/180;
@@ -1291,7 +1293,6 @@ Time Schedule Preview
rangeStart = temps[tempsID.HEAT_NORMAL];
rangeEnd = temps[tempsID.HEAT_NORMAL];
}
- const text = (rangeStart === rangeEnd) ? `${Math.round(rangeStart*2)/2}` : `>[${Math.round(rangeStart*2)/2},${Math.round(rangeEnd*2)/2}]`;
// Heat Arc
drawArc(ctx, `#F00${alpha}`, rangeStart - arcOffset, rangeEnd + arcOffset, outerDia - 4*scaleFactor, 8*scaleFactor);
// Heat price points
@@ -1322,8 +1323,18 @@ Time Schedule Preview
ctx.font = `${Math.round(14*scaleFactor*10)/10}px Verdana`;
ctx.fillStyle = `#000${alpha}`;
const heatText = document.getElementById("heatText").innerHTML;
- centerText(ctx, heatText, tCenterX, tCenterY - 30*scaleFactor);
- centerText(ctx, `${text}°C`, tCenterX, tCenterY - 10*scaleFactor);
+ const text = (rangeStart === rangeEnd) ? `${Math.round(rangeStart*2)/2}` : `>[${Math.round(rangeStart*2)/2},${Math.round(rangeEnd*2)/2}]`;
+ if (showCool) {
+ heatTrigger = Math.min(temps[tempsID.HEAT_DIRTCHEAP], temps[tempsID.COOL_DIRTCHEAP] - 2);
+ if (ACMode === ACMODE.PIGGY) centerText(ctx, heatText, tCenterX, tCenterY - 36*scaleFactor);
+ ctx.font = `${Math.round(10*scaleFactor*10)/10}px Verdana`;
+ const heatTriggerText = (ACMode === ACMODE.PIGGY) ? `< ${heatTrigger}°C` : `${heatText.toLowerCase()}`;
+ centerText(ctx, `when ${heatTriggerText}`, tCenterX, tCenterY - 22*scaleFactor);
+ centerText(ctx, `then ${text}°C`, tCenterX, tCenterY - 8*scaleFactor);
+ } else {
+ centerText(ctx, heatText, tCenterX, tCenterY - 30*scaleFactor);
+ centerText(ctx, `${text}°C`, tCenterX, tCenterY - 10*scaleFactor);
+ }
ctx.fill();
value.push(temps[tempsID.HEAT_DIRTCHEAP]);
}
@@ -1340,7 +1351,6 @@ Time Schedule Preview
rangeStart = temps[tempsID.COOL_NORMAL];
rangeEnd = temps[tempsID.COOL_NORMAL];
}
- const text = (rangeStart === rangeEnd) ? `${Math.round(rangeStart*2)/2}` : `<[${Math.round(rangeStart*2)/2},${Math.round(rangeEnd*2)/2}]`
// Cool Arc
if (overlap && !(focus === 2)) {
drawArc(ctx, `#00F${alpha}`, Math.min(temps[tempsID.HEAT_DIRTCHEAP], rangeEnd + arcOffset), rangeEnd + arcOffset, outerDia - 4*scaleFactor, 8*scaleFactor);
@@ -1376,8 +1386,18 @@ Time Schedule Preview
ctx.font = `${Math.round(14*scaleFactor*10)/10}px Verdana`;
ctx.fillStyle = `#000${alpha}`;
const coolText = document.getElementById("coolText").innerHTML;
- centerText(ctx, coolText, tCenterX, tCenterY + 30*scaleFactor);
- centerText(ctx, `${text}°C`, tCenterX, tCenterY + 10*scaleFactor);
+ const text = (rangeStart === rangeEnd) ? `${Math.round(rangeStart*2)/2}` : `<[${Math.round(rangeStart*2)/2},${Math.round(rangeEnd*2)/2}]`
+ if (showHeat) {
+ coolTrigger = Math.max(temps[tempsID.COOL_DIRTCHEAP], temps[tempsID.HEAT_DIRTCHEAP] + 2);
+ if (ACMode === ACMODE.PIGGY) centerText(ctx, coolText, tCenterX, tCenterY + 38*scaleFactor);
+ ctx.font = `${Math.round(10*scaleFactor*10)/10}px Verdana`;
+ const coolTriggerText = (ACMode === ACMODE.PIGGY) ? `> ${coolTrigger}°C` : `${coolText.toLowerCase()}`;
+ centerText(ctx, `when ${coolTriggerText}`, tCenterX, tCenterY + 8*scaleFactor);
+ centerText(ctx, `then ${text}°C`, tCenterX, tCenterY + 22*scaleFactor);
+ } else {
+ centerText(ctx, coolText, tCenterX, tCenterY + 30*scaleFactor);
+ centerText(ctx, `${text}°C`, tCenterX, tCenterY + 10*scaleFactor);
+ }
ctx.fill();
value.push(temps[tempsID.COOL_OFF]);
}
@@ -1401,12 +1421,10 @@ Time Schedule Preview
if (showCool && showHeat) {
focusText = '‣';
ctx.fillStyle = `#800${(focus === 2) ? '1' : '4'}`;
- centerTemp = Math.min(temps[tempsID.HEAT_DIRTCHEAP], temps[tempsID.COOL_DIRTCHEAP] - 2);
- centerAngle = tempToAngle(markerStartPos, markerEndPos, startTemp, endTemp, centerTemp);
+ centerAngle = tempToAngle(markerStartPos, markerEndPos, startTemp, endTemp, heatTrigger);
arcText(ctx, focusText, tCenterX, tCenterY, innerDia-6, centerAngle, centerAngle-Math.PI/2, 24); // To Heat
ctx.fillStyle = `#008${(focus === 1) ? '1' : '4'}`;
- centerTemp = Math.max(temps[tempsID.COOL_DIRTCHEAP], temps[tempsID.HEAT_DIRTCHEAP] + 2);
- centerAngle = tempToAngle(markerStartPos, markerEndPos, startTemp, endTemp, centerTemp);
+ centerAngle = tempToAngle(markerStartPos, markerEndPos, startTemp, endTemp, coolTrigger);
arcText(ctx, focusText, tCenterX, tCenterY, innerDia-6, centerAngle, centerAngle-Math.PI/2, 24); // To Cool
ctx.fill();
}