Separate bot filter settings
This commit is contained in:
+15
-8
@@ -78,6 +78,7 @@ $("#clusterBotFilterEnabled").addEventListener("change", markPresenceSettingsDir
|
||||
$("#clusterBotCount").addEventListener("input", markPresenceSettingsDirty);
|
||||
$("#clusterBotWindowSeconds").addEventListener("input", markPresenceSettingsDirty);
|
||||
$("#savePresenceSettings").addEventListener("click", savePresenceSettings);
|
||||
$("#saveBotFilterSettings").addEventListener("click", savePresenceSettings);
|
||||
$("#adminSoundToggle").addEventListener("click", () => {
|
||||
setAdminSoundMuted(!state.soundMuted);
|
||||
});
|
||||
@@ -772,12 +773,14 @@ function renderPresenceSettings(settings) {
|
||||
$("#clusterBotFilterEnabled").checked = normalized.clusterBotFilterEnabled;
|
||||
$("#clusterBotCount").value = normalized.clusterBotCount;
|
||||
$("#clusterBotWindowSeconds").value = normalized.clusterBotWindowSeconds;
|
||||
setPresenceStatus(presenceStatusText(normalized, "Oranzova"));
|
||||
setPresenceStatus(`Oranzova: ${normalized.activeSeconds}-${normalized.offlineSeconds} s necinosti.`);
|
||||
setBotFilterStatus(botFilterStatusText(normalized));
|
||||
}
|
||||
|
||||
function markPresenceSettingsDirty() {
|
||||
const normalized = currentPresenceSettingsFromForm();
|
||||
setPresenceStatus(presenceStatusText(normalized, "Neulozeno. Oranzova"));
|
||||
setPresenceStatus(`Neulozeno. Oranzova bude ${normalized.activeSeconds}-${normalized.offlineSeconds} s.`);
|
||||
setBotFilterStatus(`Neulozeno. ${botFilterStatusText(normalized)}`);
|
||||
}
|
||||
|
||||
async function savePresenceSettings() {
|
||||
@@ -790,7 +793,8 @@ async function savePresenceSettings() {
|
||||
renderPresenceSettings(state.site.settings.adminPresence || normalized);
|
||||
state.visitorRenderKey = "";
|
||||
await Promise.all([loadConversations(), loadVisitors()]);
|
||||
setPresenceStatus(presenceStatusText(normalized, "Ulozeno. Oranzova"));
|
||||
setPresenceStatus(`Ulozeno. Oranzova: ${normalized.activeSeconds}-${normalized.offlineSeconds} s necinosti.`);
|
||||
setBotFilterStatus(`Ulozeno. ${botFilterStatusText(normalized)}`);
|
||||
}
|
||||
|
||||
function normalizePresenceSettings(value = {}) {
|
||||
@@ -815,11 +819,10 @@ function currentPresenceSettingsFromForm() {
|
||||
});
|
||||
}
|
||||
|
||||
function presenceStatusText(settings, prefix) {
|
||||
const cluster = settings.clusterBotFilterEnabled
|
||||
? ` Hromadny filtr: ${settings.clusterBotCount} navstev / ${settings.clusterBotWindowSeconds} s.`
|
||||
: " Hromadny filtr vypnuty.";
|
||||
return `${prefix}: ${settings.activeSeconds}-${settings.offlineSeconds} s necinosti.${cluster}`;
|
||||
function botFilterStatusText(settings) {
|
||||
return settings.clusterBotFilterEnabled
|
||||
? `Hromadny filtr: ${settings.clusterBotCount} navstev / ${settings.clusterBotWindowSeconds} s.`
|
||||
: "Hromadny filtr vypnuty.";
|
||||
}
|
||||
|
||||
function clampNumber(value, min, max, fallback) {
|
||||
@@ -832,6 +835,10 @@ function setPresenceStatus(message) {
|
||||
$("#presenceStatus").textContent = message;
|
||||
}
|
||||
|
||||
function setBotFilterStatus(message) {
|
||||
$("#botFilterStatus").textContent = message;
|
||||
}
|
||||
|
||||
function renderTelegramSettings(settings) {
|
||||
$("#telegramEnabled").checked = Boolean(settings.enabled);
|
||||
$("#telegramOperatorName").value = settings.operatorName || "Alex";
|
||||
|
||||
Reference in New Issue
Block a user