trigger column (cross-cutting) + move-mode; move relocates instead of copies (v1.9)
This commit is contained in:
@@ -61,6 +61,23 @@
|
||||
limit.disabled = checkbox.checked;
|
||||
}
|
||||
|
||||
// Trigger column: it can never be the target, so hide+disable that option and reset to Any if it
|
||||
// was selected; the invert checkbox only means something for a specific column.
|
||||
function applyTrigger() {
|
||||
var target = document.querySelector('select[name="recoreco_target_column"]');
|
||||
var trigger = document.querySelector('select[name="recoreco_trigger_column"]');
|
||||
var invert = document.querySelector('input[name="recoreco_trigger_invert"]');
|
||||
if (!target || !trigger) { return; }
|
||||
|
||||
for (var i = 0; i < trigger.options.length; i++) {
|
||||
var isTarget = trigger.options[i].value === target.value;
|
||||
trigger.options[i].hidden = isTarget;
|
||||
trigger.options[i].disabled = isTarget;
|
||||
}
|
||||
if (trigger.value === target.value) { trigger.value = "any"; }
|
||||
if (invert) { invert.disabled = (trigger.value === "any"); }
|
||||
}
|
||||
|
||||
document.addEventListener("change", function (e) {
|
||||
if (e.target && e.target.name === "recoreco_frequency") {
|
||||
apply(e.target);
|
||||
@@ -68,6 +85,9 @@
|
||||
if (e.target && e.target.name === "recoreco_follow_finance") {
|
||||
applyFollow(e.target);
|
||||
}
|
||||
if (e.target && (e.target.name === "recoreco_target_column" || e.target.name === "recoreco_trigger_column")) {
|
||||
applyTrigger();
|
||||
}
|
||||
});
|
||||
|
||||
if (window.MutationObserver) {
|
||||
@@ -76,6 +96,7 @@
|
||||
if (select) {
|
||||
select.setAttribute("data-recoreco-init", "1");
|
||||
apply(select);
|
||||
applyTrigger();
|
||||
}
|
||||
}).observe(document.body, { childList: true, subtree: true });
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user