diff --git a/src/js/rulesAssistantOptions.tw b/src/js/rulesAssistantOptions.tw index a2a355f5a20770f9dfa4f99db8e86dd2b36283df..7f8990ee42014e72b06bfaa4951c8832b6885301 100644 --- a/src/js/rulesAssistantOptions.tw +++ b/src/js/rulesAssistantOptions.tw @@ -468,6 +468,7 @@ window.rulesAssistantOptions = (function() { class ApplicationLog extends Element { render() { const elem = document.createElement("div"); + clearSummaryCache(); elem.innerHTML = V.slaves.map(slave => DefaultRules(slave)).join(""); return elem; } diff --git a/src/js/slaveSummaryWidgets.tw b/src/js/slaveSummaryWidgets.tw new file mode 100644 index 0000000000000000000000000000000000000000..d203af4331c8e9da9dbc2783854d5016b376ca08 --- /dev/null +++ b/src/js/slaveSummaryWidgets.tw @@ -0,0 +1,10 @@ +:: Slave Summary Widgets JS [script] + +window.clearSummaryCache = function clearSummaryCache(slave) { + if (!slave) + setup.summaryCache = {}; + else if (slave instanceof Object && slave.ID !== Infinity && slave.ID !== -Infinity) + setup.summaryCache[slave.ID] = undefined; + else + setup.summaryCache[slave] = undefined; +}; diff --git a/src/pregmod/widgets/slaveSummaryWidgets.tw b/src/pregmod/widgets/slaveSummaryWidgets.tw index 66f01f09b50a41f5a6e914c899083f9cdab678d9..3a0877f83de0b8730d748a80a8c2514c8cc1faed 100644 --- a/src/pregmod/widgets/slaveSummaryWidgets.tw +++ b/src/pregmod/widgets/slaveSummaryWidgets.tw @@ -25,13 +25,7 @@ <</widget>> <<widget "ClearSummaryCache">> -<<if !$args[0]>> - <<set setup.summaryCache = {}>> -<<elseif _.isObject($args[0]) && _.isFinite($args[0].ID)>> - <<set setup.summaryCache[$args[0].ID] = undefined>> -<<else>> - <<set setup.summaryCache[$args[0]] = undefined>> -<</if>> + <<run clearSummaryCache($args[0])>> <</widget>> <<widget "SlaveSummaryUncached">>