mirror of
https://github.com/jokob-sk/NetAlertX.git
synced 2026-04-04 01:01:35 -07:00
Fix elementOptions: rename typo 'ordeable' to 'orderable'
The key 'ordeable' in elementOptions was a long-standing typo for the correct English word 'orderable'. Since the JS check in settings_utils.js used the same misspelled key, the feature appeared to work — but it was relying on the consistent propagation of a typo across the entire codebase. Two pre-existing entries in front/plugins/ui_settings/config.json already used the correct spelling 'orderable', but these had no effect because the JavaScript check (option.ordeable === 'true') never matched them. As a result, orderable behavior was silently disabled for those two settings. Changes: - front/js/settings_utils.js: renamed option.ordeable → option.orderable and isOrdeable → isOrderable (6 occurrences, lines 792/823/824/880/1079/ 1192/1228). The JS key check is the authoritative definition of the elementOptions property name, so this must change atomically with all config files. - server/initialise.py:245: renamed "ordeable" → "orderable" in the hardcoded JSON string for LOADED_PLUGINS setting. This string is the source-of-truth for that setting's elementOptions and is not auto- generated from the plugin config files. - front/plugins/*/config.json (33 files, 90 occurrences): renamed all "ordeable": "true" entries to "orderable": "true" via sed. All plugins used the typo consistently; they must be updated in the same commit to avoid a broken intermediate state. The two formerly broken 'orderable' entries in ui_settings/config.json are now matched by the corrected JS check and work as intended. Fixes netalertx/NetAlertX#1584 Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
@@ -789,7 +789,7 @@ const handleElementOptions = (setKey, elementOptions, transformers, val) => {
|
||||
let inputType = "text";
|
||||
let readOnly = "";
|
||||
let isMultiSelect = false;
|
||||
let isOrdeable = false;
|
||||
let isOrderable = false;
|
||||
let cssClasses = "";
|
||||
let placeholder = "";
|
||||
let suffix = "";
|
||||
@@ -820,8 +820,8 @@ const handleElementOptions = (setKey, elementOptions, transformers, val) => {
|
||||
if (option.multiple === "true") {
|
||||
isMultiSelect = true;
|
||||
}
|
||||
if (option.ordeable === "true") {
|
||||
isOrdeable = true;
|
||||
if (option.orderable === "true") {
|
||||
isOrderable = true;
|
||||
}
|
||||
if (option.editable === "true") {
|
||||
editable = true;
|
||||
@@ -877,7 +877,7 @@ const handleElementOptions = (setKey, elementOptions, transformers, val) => {
|
||||
inputType,
|
||||
readOnly,
|
||||
isMultiSelect,
|
||||
isOrdeable,
|
||||
isOrderable,
|
||||
cssClasses,
|
||||
placeholder,
|
||||
suffix,
|
||||
@@ -1076,7 +1076,7 @@ function collectSetting(prefix, setCodeName, setType, settingsArray) {
|
||||
},
|
||||
array: () => {
|
||||
let temps = [];
|
||||
if (opts.isOrdeable) {
|
||||
if (opts.isOrderable) {
|
||||
temps = $(`#${setCodeName}`).val();
|
||||
} else {
|
||||
const sel = $(`#${setCodeName}`).attr("my-editable") === "true" ? "" : ":selected";
|
||||
@@ -1189,7 +1189,7 @@ function generateFormHtml(settingsData, set, overrideValue, overrideOptions, ori
|
||||
inputType,
|
||||
readOnly,
|
||||
isMultiSelect,
|
||||
isOrdeable,
|
||||
isOrderable,
|
||||
cssClasses,
|
||||
placeholder,
|
||||
suffix,
|
||||
@@ -1225,7 +1225,7 @@ function generateFormHtml(settingsData, set, overrideValue, overrideOptions, ori
|
||||
switch (elementType) {
|
||||
case 'select':
|
||||
const multi = isMultiSelect ? "multiple" : "";
|
||||
const addCss = isOrdeable ? "select2 select2-hidden-accessible" : "";
|
||||
const addCss = isOrderable ? "select2 select2-hidden-accessible" : "";
|
||||
|
||||
inputHtml += `<select onChange="settingsChanged();${onChange}"
|
||||
onfocusout="${focusout}"
|
||||
|
||||
Reference in New Issue
Block a user