Compare commits

...

5 Commits

Author SHA1 Message Date
Hosted Weblate
703ba5c75b Merge branch 'origin/main' into Weblate.
Some checks are pending
docker / docker_dev (push) Waiting to run
2025-02-08 00:54:10 +01:00
Anonymous
aad74451ef Translated using Weblate (Polish)
Currently translated at 88.0% (663 of 753 strings)

Translation: NetAlertX/core
Translate-URL: https://hosted.weblate.org/projects/pialert/core/pl/
2025-02-08 00:54:08 +01:00
Anonymous
a787510963 Translated using Weblate (Portuguese (Brazil))
Currently translated at 32.9% (248 of 753 strings)

Translation: NetAlertX/core
Translate-URL: https://hosted.weblate.org/projects/pialert/core/pt_BR/
2025-02-08 00:54:07 +01:00
jokob-sk
dd2b872712 Cron Schedule validation 2025-02-08 10:53:43 +11:00
jokob-sk
2a5e419034 Better dummy newdev MAC check 2025-02-08 08:17:37 +11:00
50 changed files with 798 additions and 55 deletions

View File

@@ -348,16 +348,17 @@
const createNew = mac === 'new' ? 1 : 0; const createNew = mac === 'new' ? 1 : 0;
const devLastIP = $('#NEWDEV_devLastIP').val(); const devLastIP = $('#NEWDEV_devLastIP').val();
const newMac = $('#NEWDEV_devMac').val()
// Validate MAC and Last IP // Validate MAC and Last IP
if (mac === '' || !(isValidIPv4(devLastIP) || isValidIPv6(devLastIP))) { if (mac === '' || !isValidMac(newMac) || !( isValidIPv4(devLastIP) || isValidIPv6(devLastIP) )) {
showMessage(getString("DeviceEdit_ValidMacIp"), 5000, "modal_red"); showMessage(getString("DeviceEdit_ValidMacIp"), 5000, "modal_red");
return; return;
} }
showSpinner(); showSpinner();
// Update data to server using POST // Update data to server using POST
$.post('php/server/devices.php?action=setDeviceData', { $.post('php/server/devices.php?action=setDeviceData', {
mac: $('#NEWDEV_devMac').val(), mac: $('#NEWDEV_devMac').val(),
name: encodeURIComponent($('#NEWDEV_devName').val().replace(/'/g, "")), name: encodeURIComponent($('#NEWDEV_devName').val().replace(/'/g, "")),
@@ -403,7 +404,6 @@
// Everything loaded // Everything loaded
hideSpinner(); hideSpinner();
}); });
} }
//----------------------------------------------------------------------------------- //-----------------------------------------------------------------------------------

View File

@@ -776,6 +776,11 @@ function checkMacOrInternet(inputStr) {
} }
} }
// Alias
function isValidMac(value) {
return checkMacOrInternet(value);
}
// ----------------------------------------------------------------------------- // -----------------------------------------------------------------------------
// Gte MAC from query string // Gte MAC from query string
function getMac(){ function getMac(){

View File

@@ -717,6 +717,7 @@ const handleElementOptions = (setKey, elementOptions, transformers, val) => {
let customParams = ""; let customParams = "";
let customId = ""; let customId = "";
let columns = []; let columns = [];
let base64Regex = "";
elementOptions.forEach((option) => { elementOptions.forEach((option) => {
@@ -773,6 +774,9 @@ const handleElementOptions = (setKey, elementOptions, transformers, val) => {
if (option.columns) { if (option.columns) {
columns = option.columns; columns = option.columns;
} }
if (option.base64Regex) {
base64Regex = option.base64Regex;
}
}); });
if (transformers.includes("sha256")) { if (transformers.includes("sha256")) {
@@ -796,7 +800,8 @@ const handleElementOptions = (setKey, elementOptions, transformers, val) => {
onChange, onChange,
customParams, customParams,
customId, customId,
columns columns,
base64Regex
}; };
}; };
@@ -973,7 +978,8 @@ function generateFormHtml(settingsData, set, overrideValue, overrideOptions, ori
onChange, onChange,
customParams, customParams,
customId, customId,
columns columns,
base64Regex
} = handleElementOptions(setKey, elementOptions, transformers, inVal); } = handleElementOptions(setKey, elementOptions, transformers, inVal);
// Override value // Override value
@@ -1022,6 +1028,7 @@ function generateFormHtml(settingsData, set, overrideValue, overrideOptions, ori
my-customparams="${customParams}" my-customparams="${customParams}"
my-customid="${customId}" my-customid="${customId}"
my-originalSetKey="${originalSetKey}" my-originalSetKey="${originalSetKey}"
my-base64Regex="${base64Regex}"
id="${setKey}${suffix}" id="${setKey}${suffix}"
type="${inputType}" type="${inputType}"
value="${val}" value="${val}"

View File

@@ -171,7 +171,47 @@ function updateIconPreview(elem) {
tryUpdateIcon(); tryUpdateIcon();
} }
// ----------------------------------------------
// Validate the value based on regex
// ⚠ IMPORTANT: use the below to get a valid REGEX ⚠
// const regexStr = String.raw`^(?:\*|(?:[0-9]|[1-5][0-9]|[0-9]+-[0-9]+|\*/[0-9]+))\s+(?:\*|(?:[0-9]|1[0-9]|2[0-3]|[0-9]+-[0-9]+|\*/[0-9]+))\s+(?:\*|(?:[1-9]|[12][0-9]|3[01]|[0-9]+-[0-9]+|\*/[0-9]+))\s+(?:\*|(?:[1-9]|1[0-2]|[0-9]+-[0-9]+|\*/[0-9]+))\s+(?:\*|(?:[0-6]|[0-6]-[0-6]|\*/[0-9]+))$`;
// console.log(btoa(regexStr));
function validateRegex(elem) {
const iconSpan = $(elem).parent().find(".validityCheck");
const inputElem = $(elem);
const regexTmp = atob($(inputElem).attr("my-base64Regex")); // Decode base64 regex
console.log(regexTmp);
const regex = new RegExp(regexTmp); // Convert to a valid RegExp object
let attempts = 0;
function tryUpdateValidityResultIcon() {
let value = inputElem.val().trim(); // Ensure trimmed value
if (value === "") {
attempts++;
if (attempts < 10) {
setTimeout(tryUpdateValidityResultIcon, 1000); // Retry after 1 sec if empty
} else {
console.error("Input value is empty after 10 attempts");
}
return;
}
// Validate against regex
if (regex.test(value)) {
iconSpan.html("<i class='fa-regular fa-check'></i>");
} else {
iconSpan.html("<i class='fa-regular fa-xmark'></i>");
}
}
// Attach real-time validation on input change
inputElem.on("input", tryUpdateValidityResultIcon);
tryUpdateValidityResultIcon(); // Initial validation
}
// ----------------------------------------------------------------------------- // -----------------------------------------------------------------------------
// Nice checkboxes with iCheck // Nice checkboxes with iCheck

View File

@@ -136,7 +136,8 @@
onChange, onChange,
customParams, customParams,
customId, customId,
columns columns,
base64Regex
} = handleElementOptions('none', elementOptions, transformers, val = ""); } = handleElementOptions('none', elementOptions, transformers, val = "");
// render based on element type // render based on element type

View File

@@ -328,6 +328,7 @@
"Gen_Upd_Fail": "", "Gen_Upd_Fail": "",
"Gen_Update": "", "Gen_Update": "",
"Gen_Update_Value": "", "Gen_Update_Value": "",
"Gen_ValidIcon": "",
"Gen_Warning": "", "Gen_Warning": "",
"Gen_Work_In_Progress": "", "Gen_Work_In_Progress": "",
"Gen_create_new_device": "", "Gen_create_new_device": "",

View File

@@ -328,6 +328,7 @@
"Gen_Upd_Fail": "Actualització fallida", "Gen_Upd_Fail": "Actualització fallida",
"Gen_Update": "Actualitza", "Gen_Update": "Actualitza",
"Gen_Update_Value": "Actualitzar Valor", "Gen_Update_Value": "Actualitzar Valor",
"Gen_ValidIcon": "",
"Gen_Warning": "Advertència", "Gen_Warning": "Advertència",
"Gen_Work_In_Progress": "Work in progress, un bon moment per retroalimentació a https://github.com/jokob-sk/NetAlertX/issues", "Gen_Work_In_Progress": "Work in progress, un bon moment per retroalimentació a https://github.com/jokob-sk/NetAlertX/issues",
"Gen_create_new_device": "Nou dispositiu", "Gen_create_new_device": "Nou dispositiu",

View File

@@ -328,6 +328,7 @@
"Gen_Upd_Fail": "", "Gen_Upd_Fail": "",
"Gen_Update": "", "Gen_Update": "",
"Gen_Update_Value": "", "Gen_Update_Value": "",
"Gen_ValidIcon": "",
"Gen_Warning": "", "Gen_Warning": "",
"Gen_Work_In_Progress": "", "Gen_Work_In_Progress": "",
"Gen_create_new_device": "", "Gen_create_new_device": "",

View File

@@ -340,6 +340,7 @@
"Gen_Upd_Fail": "Aktualisierung fehlgeschlagen", "Gen_Upd_Fail": "Aktualisierung fehlgeschlagen",
"Gen_Update": "Aktualisieren", "Gen_Update": "Aktualisieren",
"Gen_Update_Value": "Wert aktualisieren", "Gen_Update_Value": "Wert aktualisieren",
"Gen_ValidIcon": "",
"Gen_Warning": "Warnung", "Gen_Warning": "Warnung",
"Gen_Work_In_Progress": "Keine Finalversion, feedback bitte unter: https://github.com/jokob-sk/NetAlertX/issues", "Gen_Work_In_Progress": "Keine Finalversion, feedback bitte unter: https://github.com/jokob-sk/NetAlertX/issues",
"Gen_create_new_device": "Neues Gerät", "Gen_create_new_device": "Neues Gerät",

View File

@@ -328,6 +328,7 @@
"Gen_Upd_Fail": "Update failed", "Gen_Upd_Fail": "Update failed",
"Gen_Update": "Update", "Gen_Update": "Update",
"Gen_Update_Value": "Update Value", "Gen_Update_Value": "Update Value",
"Gen_ValidIcon": "<i class=\"fa-solid fa-chevron-right \"></i>",
"Gen_Warning": "Warning", "Gen_Warning": "Warning",
"Gen_Work_In_Progress": "Work in progress, good time to feedback on https://github.com/jokob-sk/NetAlertX/issues", "Gen_Work_In_Progress": "Work in progress, good time to feedback on https://github.com/jokob-sk/NetAlertX/issues",
"Gen_create_new_device": "New device", "Gen_create_new_device": "New device",

View File

@@ -338,6 +338,7 @@
"Gen_Upd_Fail": "Fallo al actualizar", "Gen_Upd_Fail": "Fallo al actualizar",
"Gen_Update": "Actualizar", "Gen_Update": "Actualizar",
"Gen_Update_Value": "Actualizar valor", "Gen_Update_Value": "Actualizar valor",
"Gen_ValidIcon": "",
"Gen_Warning": "Advertencia", "Gen_Warning": "Advertencia",
"Gen_Work_In_Progress": "Trabajo en curso, un buen momento para hacer comentarios en https://github.com/jokob-sk/NetAlertX/issues", "Gen_Work_In_Progress": "Trabajo en curso, un buen momento para hacer comentarios en https://github.com/jokob-sk/NetAlertX/issues",
"Gen_create_new_device": "Nuevo dispositivo", "Gen_create_new_device": "Nuevo dispositivo",

View File

@@ -328,6 +328,7 @@
"Gen_Upd_Fail": "Échec de la mise à jour", "Gen_Upd_Fail": "Échec de la mise à jour",
"Gen_Update": "Mise à jour", "Gen_Update": "Mise à jour",
"Gen_Update_Value": "Valeur à mettre à jour", "Gen_Update_Value": "Valeur à mettre à jour",
"Gen_ValidIcon": "",
"Gen_Warning": "Avertissement", "Gen_Warning": "Avertissement",
"Gen_Work_In_Progress": "Travaux en cours, c'est le bon moment pour faire un retour via la liste d'anomalies sur Github https://github.com/jokob-sk/NetAlertX/issues", "Gen_Work_In_Progress": "Travaux en cours, c'est le bon moment pour faire un retour via la liste d'anomalies sur Github https://github.com/jokob-sk/NetAlertX/issues",
"Gen_create_new_device": "Nouvel appareil", "Gen_create_new_device": "Nouvel appareil",

View File

@@ -328,6 +328,7 @@
"Gen_Upd_Fail": "Aggiornamento fallito", "Gen_Upd_Fail": "Aggiornamento fallito",
"Gen_Update": "Aggiorna", "Gen_Update": "Aggiorna",
"Gen_Update_Value": "Aggiorna valore", "Gen_Update_Value": "Aggiorna valore",
"Gen_ValidIcon": "",
"Gen_Warning": "Avviso", "Gen_Warning": "Avviso",
"Gen_Work_In_Progress": "Lavori in corso, è quindi un buon momento per un feedback su https://github.com/jokob-sk/NetAlertX/issues", "Gen_Work_In_Progress": "Lavori in corso, è quindi un buon momento per un feedback su https://github.com/jokob-sk/NetAlertX/issues",
"Gen_create_new_device": "Nuovo dispositivo", "Gen_create_new_device": "Nuovo dispositivo",

View File

@@ -328,6 +328,7 @@
"Gen_Upd_Fail": "Oppdatering feilet", "Gen_Upd_Fail": "Oppdatering feilet",
"Gen_Update": "Oppdater", "Gen_Update": "Oppdater",
"Gen_Update_Value": "Oppdater verdi", "Gen_Update_Value": "Oppdater verdi",
"Gen_ValidIcon": "",
"Gen_Warning": "Advarsel", "Gen_Warning": "Advarsel",
"Gen_Work_In_Progress": "Work in progress, gjerne kom med tilbakemeldinger på https://github.com/jokob-sk/NetAlertX/issues", "Gen_Work_In_Progress": "Work in progress, gjerne kom med tilbakemeldinger på https://github.com/jokob-sk/NetAlertX/issues",
"Gen_create_new_device": "", "Gen_create_new_device": "",

3
front/php/templates/language/pl_pl.json Executable file → Normal file
View File

@@ -328,6 +328,7 @@
"Gen_Upd_Fail": "Aktualizacja nie powiodła się", "Gen_Upd_Fail": "Aktualizacja nie powiodła się",
"Gen_Update": "Aktualizuj", "Gen_Update": "Aktualizuj",
"Gen_Update_Value": "Aktualizuj Wartość", "Gen_Update_Value": "Aktualizuj Wartość",
"Gen_ValidIcon": "",
"Gen_Warning": "Uwaga", "Gen_Warning": "Uwaga",
"Gen_Work_In_Progress": "Praca w toku, dobry czas na feedback https://github.com/jokob-sk/NetAlertX/issues", "Gen_Work_In_Progress": "Praca w toku, dobry czas na feedback https://github.com/jokob-sk/NetAlertX/issues",
"Gen_create_new_device": "", "Gen_create_new_device": "",
@@ -752,4 +753,4 @@
"settings_update_item_warning": "Zaktualizuj poniższą wartość. Zachowaj ostrożność i postępuj zgodnie z poprzednim formatem. <b>Walidacja nie jest wykonywana.</b>", "settings_update_item_warning": "Zaktualizuj poniższą wartość. Zachowaj ostrożność i postępuj zgodnie z poprzednim formatem. <b>Walidacja nie jest wykonywana.</b>",
"test_event_icon": "fa-vial-circle-check", "test_event_icon": "fa-vial-circle-check",
"test_event_tooltip": "Zapisz zmiany zanim będziesz testować swoje ustawienia." "test_event_tooltip": "Zapisz zmiany zanim będziesz testować swoje ustawienia."
} }

3
front/php/templates/language/pt_br.json Executable file → Normal file
View File

@@ -328,6 +328,7 @@
"Gen_Upd_Fail": "A atualização falhou", "Gen_Upd_Fail": "A atualização falhou",
"Gen_Update": "Atualizar", "Gen_Update": "Atualizar",
"Gen_Update_Value": "Atualizar valor", "Gen_Update_Value": "Atualizar valor",
"Gen_ValidIcon": "",
"Gen_Warning": "Aviso", "Gen_Warning": "Aviso",
"Gen_Work_In_Progress": "Trabalho em andamento, um bom momento para enviar feedback em https://github.com/jokob-sk/NetAlertX/issues", "Gen_Work_In_Progress": "Trabalho em andamento, um bom momento para enviar feedback em https://github.com/jokob-sk/NetAlertX/issues",
"Gen_create_new_device": "", "Gen_create_new_device": "",
@@ -752,4 +753,4 @@
"settings_update_item_warning": "", "settings_update_item_warning": "",
"test_event_icon": "", "test_event_icon": "",
"test_event_tooltip": "" "test_event_tooltip": ""
} }

View File

@@ -328,6 +328,7 @@
"Gen_Upd_Fail": "Не удалось обновить", "Gen_Upd_Fail": "Не удалось обновить",
"Gen_Update": "Обновление", "Gen_Update": "Обновление",
"Gen_Update_Value": "Обновить значение", "Gen_Update_Value": "Обновить значение",
"Gen_ValidIcon": "",
"Gen_Warning": "Предупреждение", "Gen_Warning": "Предупреждение",
"Gen_Work_In_Progress": "Работа продолжается, самое время оставить отзыв на https://github.com/jokob-sk/NetAlertX/issues", "Gen_Work_In_Progress": "Работа продолжается, самое время оставить отзыв на https://github.com/jokob-sk/NetAlertX/issues",
"Gen_create_new_device": "Новое устройство", "Gen_create_new_device": "Новое устройство",

View File

@@ -328,6 +328,7 @@
"Gen_Upd_Fail": "", "Gen_Upd_Fail": "",
"Gen_Update": "", "Gen_Update": "",
"Gen_Update_Value": "", "Gen_Update_Value": "",
"Gen_ValidIcon": "",
"Gen_Warning": "Uyarı", "Gen_Warning": "Uyarı",
"Gen_Work_In_Progress": "", "Gen_Work_In_Progress": "",
"Gen_create_new_device": "", "Gen_create_new_device": "",

View File

@@ -328,6 +328,7 @@
"Gen_Upd_Fail": "Не вдалося оновити", "Gen_Upd_Fail": "Не вдалося оновити",
"Gen_Update": "оновлення", "Gen_Update": "оновлення",
"Gen_Update_Value": "Оновити значення", "Gen_Update_Value": "Оновити значення",
"Gen_ValidIcon": "",
"Gen_Warning": "УВАГА", "Gen_Warning": "УВАГА",
"Gen_Work_In_Progress": "Робота триває, час залишити відгук на https://github.com/jokob-sk/NetAlertX/issues", "Gen_Work_In_Progress": "Робота триває, час залишити відгук на https://github.com/jokob-sk/NetAlertX/issues",
"Gen_create_new_device": "новий пристрій", "Gen_create_new_device": "новий пристрій",

View File

@@ -328,6 +328,7 @@
"Gen_Upd_Fail": "更新失败", "Gen_Upd_Fail": "更新失败",
"Gen_Update": "更新", "Gen_Update": "更新",
"Gen_Update_Value": "更新值", "Gen_Update_Value": "更新值",
"Gen_ValidIcon": "",
"Gen_Warning": "警告", "Gen_Warning": "警告",
"Gen_Work_In_Progress": "工作正在进行中,欢迎在 https://github.com/jokob-sk/NetAlertX/issues 上反馈", "Gen_Work_In_Progress": "工作正在进行中,欢迎在 https://github.com/jokob-sk/NetAlertX/issues 上反馈",
"Gen_create_new_device": "", "Gen_create_new_device": "",

View File

@@ -75,7 +75,30 @@
"type": { "type": {
"dataType": "string", "dataType": "string",
"elements": [ "elements": [
{ "elementType": "input", "elementOptions": [], "transformers": [] } {
"elementType": "span",
"elementOptions": [
{
"cssClasses": "input-group-addon validityCheck"
},
{
"getStringKey": "Gen_ValidIcon"
}
],
"transformers": []
},
{
"elementType": "input",
"elementOptions": [
{
"onChange": "validateRegex(this)"
},
{
"base64Regex": "Xig/OlwqfCg/OlswLTldfFsxLTVdWzAtOV18WzAtOV0rLVswLTldK3xcKi9bMC05XSspKVxzKyg/OlwqfCg/OlswLTldfDFbMC05XXwyWzAtM118WzAtOV0rLVswLTldK3xcKi9bMC05XSspKVxzKyg/OlwqfCg/OlsxLTldfFsxMl1bMC05XXwzWzAxXXxbMC05XSstWzAtOV0rfFwqL1swLTldKykpXHMrKD86XCp8KD86WzEtOV18MVswLTJdfFswLTldKy1bMC05XSt8XCovWzAtOV0rKSlccysoPzpcKnwoPzpbMC02XXxbMC02XS1bMC02XXxcKi9bMC05XSspKSQ="
}
],
"transformers": []
}
] ]
}, },
"default_value": "*/5 * * * *", "default_value": "*/5 * * * *",

View File

@@ -361,7 +361,30 @@
"type": { "type": {
"dataType": "string", "dataType": "string",
"elements": [ "elements": [
{ "elementType": "input", "elementOptions": [], "transformers": [] } {
"elementType": "span",
"elementOptions": [
{
"cssClasses": "input-group-addon validityCheck"
},
{
"getStringKey": "Gen_ValidIcon"
}
],
"transformers": []
},
{
"elementType": "input",
"elementOptions": [
{
"onChange": "validateRegex(this)"
},
{
"base64Regex": "Xig/OlwqfCg/OlswLTldfFsxLTVdWzAtOV18WzAtOV0rLVswLTldK3xcKi9bMC05XSspKVxzKyg/OlwqfCg/OlswLTldfDFbMC05XXwyWzAtM118WzAtOV0rLVswLTldK3xcKi9bMC05XSspKVxzKyg/OlwqfCg/OlsxLTldfFsxMl1bMC05XXwzWzAxXXxbMC05XSstWzAtOV0rfFwqL1swLTldKykpXHMrKD86XCp8KD86WzEtOV18MVswLTJdfFswLTldKy1bMC05XSt8XCovWzAtOV0rKSlccysoPzpcKnwoPzpbMC02XXxbMC02XS1bMC02XXxcKi9bMC05XSspKSQ="
}
],
"transformers": []
}
] ]
}, },
"default_value": "0 2 * * 3", "default_value": "0 2 * * 3",

View File

@@ -208,7 +208,30 @@
"type": { "type": {
"dataType": "string", "dataType": "string",
"elements": [ "elements": [
{ "elementType": "input", "elementOptions": [], "transformers": [] } {
"elementType": "span",
"elementOptions": [
{
"cssClasses": "input-group-addon validityCheck"
},
{
"getStringKey": "Gen_ValidIcon"
}
],
"transformers": []
},
{
"elementType": "input",
"elementOptions": [
{
"onChange": "validateRegex(this)"
},
{
"base64Regex": "Xig/OlwqfCg/OlswLTldfFsxLTVdWzAtOV18WzAtOV0rLVswLTldK3xcKi9bMC05XSspKVxzKyg/OlwqfCg/OlswLTldfDFbMC05XXwyWzAtM118WzAtOV0rLVswLTldK3xcKi9bMC05XSspKVxzKyg/OlwqfCg/OlsxLTldfFsxMl1bMC05XXwzWzAxXXxbMC05XSstWzAtOV0rfFwqL1swLTldKykpXHMrKD86XCp8KD86WzEtOV18MVswLTJdfFswLTldKy1bMC05XSt8XCovWzAtOV0rKSlccysoPzpcKnwoPzpbMC02XXxbMC02XS1bMC02XXxcKi9bMC05XSspKSQ="
}
],
"transformers": []
}
] ]
}, },
"default_value": "*/5 * * * *", "default_value": "*/5 * * * *",

View File

@@ -84,9 +84,28 @@
"type": { "type": {
"dataType": "string", "dataType": "string",
"elements": [ "elements": [
{
"elementType": "span",
"elementOptions": [
{
"cssClasses": "input-group-addon validityCheck"
},
{
"getStringKey": "Gen_ValidIcon"
}
],
"transformers": []
},
{ {
"elementType": "input", "elementType": "input",
"elementOptions": [], "elementOptions": [
{
"onChange": "validateRegex(this)"
},
{
"base64Regex": "Xig/OlwqfCg/OlswLTldfFsxLTVdWzAtOV18WzAtOV0rLVswLTldK3xcKi9bMC05XSspKVxzKyg/OlwqfCg/OlswLTldfDFbMC05XXwyWzAtM118WzAtOV0rLVswLTldK3xcKi9bMC05XSspKVxzKyg/OlwqfCg/OlsxLTldfFsxMl1bMC05XXwzWzAxXXxbMC05XSstWzAtOV0rfFwqL1swLTldKykpXHMrKD86XCp8KD86WzEtOV18MVswLTJdfFswLTldKy1bMC05XSt8XCovWzAtOV0rKSlccysoPzpcKnwoPzpbMC02XXxbMC02XS1bMC02XXxcKi9bMC05XSspKSQ="
}
],
"transformers": [] "transformers": []
} }
] ]

View File

@@ -132,7 +132,30 @@
"type": { "type": {
"dataType": "string", "dataType": "string",
"elements": [ "elements": [
{ "elementType": "input", "elementOptions": [], "transformers": [] } {
"elementType": "span",
"elementOptions": [
{
"cssClasses": "input-group-addon validityCheck"
},
{
"getStringKey": "Gen_ValidIcon"
}
],
"transformers": []
},
{
"elementType": "input",
"elementOptions": [
{
"onChange": "validateRegex(this)"
},
{
"base64Regex": "Xig/OlwqfCg/OlswLTldfFsxLTVdWzAtOV18WzAtOV0rLVswLTldK3xcKi9bMC05XSspKVxzKyg/OlwqfCg/OlswLTldfDFbMC05XXwyWzAtM118WzAtOV0rLVswLTldK3xcKi9bMC05XSspKVxzKyg/OlwqfCg/OlsxLTldfFsxMl1bMC05XXwzWzAxXXxbMC05XSstWzAtOV0rfFwqL1swLTldKykpXHMrKD86XCp8KD86WzEtOV18MVswLTJdfFswLTldKy1bMC05XSt8XCovWzAtOV0rKSlccysoPzpcKnwoPzpbMC02XXxbMC02XS1bMC02XXxcKi9bMC05XSspKSQ="
}
],
"transformers": []
}
] ]
}, },
"default_value": "*/30 * * * *", "default_value": "*/30 * * * *",

View File

@@ -5,8 +5,11 @@
"enabled": true, "enabled": true,
"data_source": "script", "data_source": "script",
"show_ui": false, "show_ui": false,
"localized": ["display_name", "description", "icon"], "localized": [
"display_name",
"description",
"icon"
],
"display_name": [ "display_name": [
{ {
"language_code": "en_us", "language_code": "en_us",
@@ -53,15 +56,20 @@
"value": "CSVBCKP_location" "value": "CSVBCKP_location"
} }
], ],
"settings": [ "settings": [
{ {
"function": "RUN", "function": "RUN",
"events": ["run"], "events": [
"run"
],
"type": { "type": {
"dataType": "string", "dataType": "string",
"elements": [ "elements": [
{ "elementType": "select", "elementOptions": [], "transformers": [] } {
"elementType": "select",
"elementOptions": [],
"transformers": []
}
] ]
}, },
"default_value": "schedule", "default_value": "schedule",
@@ -72,7 +80,10 @@
"always_after_scan", "always_after_scan",
"on_new_device" "on_new_device"
], ],
"localized": ["name", "description"], "localized": [
"name",
"description"
],
"name": [ "name": [
{ {
"language_code": "en_us", "language_code": "en_us",
@@ -109,14 +120,21 @@
"elements": [ "elements": [
{ {
"elementType": "input", "elementType": "input",
"elementOptions": [{ "readonly": "true" }], "elementOptions": [
{
"readonly": "true"
}
],
"transformers": [] "transformers": []
} }
] ]
}, },
"default_value": "python3 /app/front/plugins/csv_backup/script.py overwrite={overwrite} location={location}", "default_value": "python3 /app/front/plugins/csv_backup/script.py overwrite={overwrite} location={location}",
"options": [], "options": [],
"localized": ["name", "description"], "localized": [
"name",
"description"
],
"name": [ "name": [
{ {
"language_code": "en_us", "language_code": "en_us",
@@ -151,12 +169,38 @@
"type": { "type": {
"dataType": "string", "dataType": "string",
"elements": [ "elements": [
{ "elementType": "input", "elementOptions": [], "transformers": [] } {
"elementType": "span",
"elementOptions": [
{
"cssClasses": "input-group-addon validityCheck"
},
{
"getStringKey": "Gen_ValidIcon"
}
],
"transformers": []
},
{
"elementType": "input",
"elementOptions": [
{
"onChange": "validateRegex(this)"
},
{
"base64Regex": "Xig/OlwqfCg/OlswLTldfFsxLTVdWzAtOV18WzAtOV0rLVswLTldK3xcKi9bMC05XSspKVxzKyg/OlwqfCg/OlswLTldfDFbMC05XXwyWzAtM118WzAtOV0rLVswLTldK3xcKi9bMC05XSspKVxzKyg/OlwqfCg/OlsxLTldfFsxMl1bMC05XXwzWzAxXXxbMC05XSstWzAtOV0rfFwqL1swLTldKykpXHMrKD86XCp8KD86WzEtOV18MVswLTJdfFswLTldKy1bMC05XSt8XCovWzAtOV0rKSlccysoPzpcKnwoPzpbMC02XXxbMC02XS1bMC02XXxcKi9bMC05XSspKSQ="
}
],
"transformers": []
}
] ]
}, },
"default_value": "0 2 * * 3", "default_value": "0 2 * * 3",
"options": [], "options": [],
"localized": ["name", "description"], "localized": [
"name",
"description"
],
"name": [ "name": [
{ {
"language_code": "en_us", "language_code": "en_us",
@@ -193,14 +237,21 @@
"elements": [ "elements": [
{ {
"elementType": "input", "elementType": "input",
"elementOptions": [{ "type": "number" }], "elementOptions": [
{
"type": "number"
}
],
"transformers": [] "transformers": []
} }
] ]
}, },
"default_value": 30, "default_value": 30,
"options": [], "options": [],
"localized": ["name", "description"], "localized": [
"name",
"description"
],
"name": [ "name": [
{ {
"language_code": "en_us", "language_code": "en_us",
@@ -237,14 +288,21 @@
"elements": [ "elements": [
{ {
"elementType": "input", "elementType": "input",
"elementOptions": [{ "type": "checkbox" }], "elementOptions": [
{
"type": "checkbox"
}
],
"transformers": [] "transformers": []
} }
] ]
}, },
"default_value": false, "default_value": false,
"options": [], "options": [],
"localized": ["name", "description"], "localized": [
"name",
"description"
],
"name": [ "name": [
{ {
"language_code": "en_us", "language_code": "en_us",
@@ -279,12 +337,19 @@
"type": { "type": {
"dataType": "string", "dataType": "string",
"elements": [ "elements": [
{ "elementType": "input", "elementOptions": [], "transformers": [] } {
"elementType": "input",
"elementOptions": [],
"transformers": []
}
] ]
}, },
"default_value": "/app/config", "default_value": "/app/config",
"options": [], "options": [],
"localized": ["name", "description"], "localized": [
"name",
"description"
],
"name": [ "name": [
{ {
"language_code": "en_us", "language_code": "en_us",
@@ -315,6 +380,5 @@
] ]
} }
], ],
"database_column_definitions": [] "database_column_definitions": []
} }

View File

@@ -109,7 +109,30 @@
"type": { "type": {
"dataType": "string", "dataType": "string",
"elements": [ "elements": [
{ "elementType": "input", "elementOptions": [], "transformers": [] } {
"elementType": "span",
"elementOptions": [
{
"cssClasses": "input-group-addon validityCheck"
},
{
"getStringKey": "Gen_ValidIcon"
}
],
"transformers": []
},
{
"elementType": "input",
"elementOptions": [
{
"onChange": "validateRegex(this)"
},
{
"base64Regex": "Xig/OlwqfCg/OlswLTldfFsxLTVdWzAtOV18WzAtOV0rLVswLTldK3xcKi9bMC05XSspKVxzKyg/OlwqfCg/OlswLTldfDFbMC05XXwyWzAtM118WzAtOV0rLVswLTldK3xcKi9bMC05XSspKVxzKyg/OlwqfCg/OlsxLTldfFsxMl1bMC05XXwzWzAxXXxbMC05XSstWzAtOV0rfFwqL1swLTldKykpXHMrKD86XCp8KD86WzEtOV18MVswLTJdfFswLTldKy1bMC05XSt8XCovWzAtOV0rKSlccysoPzpcKnwoPzpbMC02XXxbMC02XS1bMC02XXxcKi9bMC05XSspKSQ="
}
],
"transformers": []
}
] ]
}, },
"default_value": "*/30 * * * *", "default_value": "*/30 * * * *",

View File

@@ -159,7 +159,30 @@
"type": { "type": {
"dataType": "string", "dataType": "string",
"elements": [ "elements": [
{ "elementType": "input", "elementOptions": [], "transformers": [] } {
"elementType": "span",
"elementOptions": [
{
"cssClasses": "input-group-addon validityCheck"
},
{
"getStringKey": "Gen_ValidIcon"
}
],
"transformers": []
},
{
"elementType": "input",
"elementOptions": [
{
"onChange": "validateRegex(this)"
},
{
"base64Regex": "Xig/OlwqfCg/OlswLTldfFsxLTVdWzAtOV18WzAtOV0rLVswLTldK3xcKi9bMC05XSspKVxzKyg/OlwqfCg/OlswLTldfDFbMC05XXwyWzAtM118WzAtOV0rLVswLTldK3xcKi9bMC05XSspKVxzKyg/OlwqfCg/OlsxLTldfFsxMl1bMC05XXwzWzAxXXxbMC05XSstWzAtOV0rfFwqL1swLTldKykpXHMrKD86XCp8KD86WzEtOV18MVswLTJdfFswLTldKy1bMC05XSt8XCovWzAtOV0rKSlccysoPzpcKnwoPzpbMC02XXxbMC02XS1bMC02XXxcKi9bMC05XSspKSQ="
}
],
"transformers": []
}
] ]
}, },
"default_value": "*/5 * * * *", "default_value": "*/5 * * * *",

View File

@@ -580,7 +580,30 @@
"type": { "type": {
"dataType": "string", "dataType": "string",
"elements": [ "elements": [
{ "elementType": "input", "elementOptions": [], "transformers": [] } {
"elementType": "span",
"elementOptions": [
{
"cssClasses": "input-group-addon validityCheck"
},
{
"getStringKey": "Gen_ValidIcon"
}
],
"transformers": []
},
{
"elementType": "input",
"elementOptions": [
{
"onChange": "validateRegex(this)"
},
{
"base64Regex": "Xig/OlwqfCg/OlswLTldfFsxLTVdWzAtOV18WzAtOV0rLVswLTldK3xcKi9bMC05XSspKVxzKyg/OlwqfCg/OlswLTldfDFbMC05XXwyWzAtM118WzAtOV0rLVswLTldK3xcKi9bMC05XSspKVxzKyg/OlwqfCg/OlsxLTldfFsxMl1bMC05XXwzWzAxXXxbMC05XSstWzAtOV0rfFwqL1swLTldKykpXHMrKD86XCp8KD86WzEtOV18MVswLTJdfFswLTldKy1bMC05XSt8XCovWzAtOV0rKSlccysoPzpcKnwoPzpbMC02XXxbMC02XS1bMC02XXxcKi9bMC05XSspKSQ="
}
],
"transformers": []
}
] ]
}, },
"default_value": "0 2 * * *", "default_value": "0 2 * * *",

View File

@@ -381,7 +381,30 @@
"type": { "type": {
"dataType": "string", "dataType": "string",
"elements": [ "elements": [
{ "elementType": "input", "elementOptions": [], "transformers": [] } {
"elementType": "span",
"elementOptions": [
{
"cssClasses": "input-group-addon validityCheck"
},
{
"getStringKey": "Gen_ValidIcon"
}
],
"transformers": []
},
{
"elementType": "input",
"elementOptions": [
{
"onChange": "validateRegex(this)"
},
{
"base64Regex": "Xig/OlwqfCg/OlswLTldfFsxLTVdWzAtOV18WzAtOV0rLVswLTldK3xcKi9bMC05XSspKVxzKyg/OlwqfCg/OlswLTldfDFbMC05XXwyWzAtM118WzAtOV0rLVswLTldK3xcKi9bMC05XSspKVxzKyg/OlwqfCg/OlsxLTldfFsxMl1bMC05XXwzWzAxXXxbMC05XSstWzAtOV0rfFwqL1swLTldKykpXHMrKD86XCp8KD86WzEtOV18MVswLTJdfFswLTldKy1bMC05XSt8XCovWzAtOV0rKSlccysoPzpcKnwoPzpbMC02XXxbMC02XS1bMC02XXxcKi9bMC05XSspKSQ="
}
],
"transformers": []
}
] ]
}, },
"default_value": "0 2 * * *", "default_value": "0 2 * * *",

View File

@@ -87,9 +87,28 @@
"type": { "type": {
"dataType": "string", "dataType": "string",
"elements": [ "elements": [
{
"elementType": "span",
"elementOptions": [
{
"cssClasses": "input-group-addon validityCheck"
},
{
"getStringKey": "Gen_ValidIcon"
}
],
"transformers": []
},
{ {
"elementType": "input", "elementType": "input",
"elementOptions": [], "elementOptions": [
{
"onChange": "validateRegex(this)"
},
{
"base64Regex": "Xig/OlwqfCg/OlswLTldfFsxLTVdWzAtOV18WzAtOV0rLVswLTldK3xcKi9bMC05XSspKVxzKyg/OlwqfCg/OlswLTldfDFbMC05XXwyWzAtM118WzAtOV0rLVswLTldK3xcKi9bMC05XSspKVxzKyg/OlwqfCg/OlsxLTldfFsxMl1bMC05XXwzWzAxXXxbMC05XSstWzAtOV0rfFwqL1swLTldKykpXHMrKD86XCp8KD86WzEtOV18MVswLTJdfFswLTldKy1bMC05XSt8XCovWzAtOV0rKSlccysoPzpcKnwoPzpbMC02XXxbMC02XS1bMC02XXxcKi9bMC05XSspKSQ="
}
],
"transformers": [] "transformers": []
} }
] ]

View File

@@ -164,7 +164,30 @@
"type": { "type": {
"dataType": "string", "dataType": "string",
"elements": [ "elements": [
{ "elementType": "input", "elementOptions": [], "transformers": [] } {
"elementType": "span",
"elementOptions": [
{
"cssClasses": "input-group-addon validityCheck"
},
{
"getStringKey": "Gen_ValidIcon"
}
],
"transformers": []
},
{
"elementType": "input",
"elementOptions": [
{
"onChange": "validateRegex(this)"
},
{
"base64Regex": "Xig/OlwqfCg/OlswLTldfFsxLTVdWzAtOV18WzAtOV0rLVswLTldK3xcKi9bMC05XSspKVxzKyg/OlwqfCg/OlswLTldfDFbMC05XXwyWzAtM118WzAtOV0rLVswLTldK3xcKi9bMC05XSspKVxzKyg/OlwqfCg/OlsxLTldfFsxMl1bMC05XXwzWzAxXXxbMC05XSstWzAtOV0rfFwqL1swLTldKykpXHMrKD86XCp8KD86WzEtOV18MVswLTJdfFswLTldKy1bMC05XSt8XCovWzAtOV0rKSlccysoPzpcKnwoPzpbMC02XXxbMC02XS1bMC02XXxcKi9bMC05XSspKSQ="
}
],
"transformers": []
}
] ]
}, },
"default_value": "*/5 * * * *", "default_value": "*/5 * * * *",

View File

@@ -187,7 +187,30 @@
"type": { "type": {
"dataType": "string", "dataType": "string",
"elements": [ "elements": [
{ "elementType": "input", "elementOptions": [], "transformers": [] } {
"elementType": "span",
"elementOptions": [
{
"cssClasses": "input-group-addon validityCheck"
},
{
"getStringKey": "Gen_ValidIcon"
}
],
"transformers": []
},
{
"elementType": "input",
"elementOptions": [
{
"onChange": "validateRegex(this)"
},
{
"base64Regex": "Xig/OlwqfCg/OlswLTldfFsxLTVdWzAtOV18WzAtOV0rLVswLTldK3xcKi9bMC05XSspKVxzKyg/OlwqfCg/OlswLTldfDFbMC05XXwyWzAtM118WzAtOV0rLVswLTldK3xcKi9bMC05XSspKVxzKyg/OlwqfCg/OlsxLTldfFsxMl1bMC05XXwzWzAxXXxbMC05XSstWzAtOV0rfFwqL1swLTldKykpXHMrKD86XCp8KD86WzEtOV18MVswLTJdfFswLTldKy1bMC05XSt8XCovWzAtOV0rKSlccysoPzpcKnwoPzpbMC02XXxbMC02XS1bMC02XXxcKi9bMC05XSspKSQ="
}
],
"transformers": []
}
] ]
}, },
"default_value": "*/5 * * * *", "default_value": "*/5 * * * *",

View File

@@ -452,7 +452,30 @@
"type": { "type": {
"dataType": "string", "dataType": "string",
"elements": [ "elements": [
{ "elementType": "input", "elementOptions": [], "transformers": [] } {
"elementType": "span",
"elementOptions": [
{
"cssClasses": "input-group-addon validityCheck"
},
{
"getStringKey": "Gen_ValidIcon"
}
],
"transformers": []
},
{
"elementType": "input",
"elementOptions": [
{
"onChange": "validateRegex(this)"
},
{
"base64Regex": "Xig/OlwqfCg/OlswLTldfFsxLTVdWzAtOV18WzAtOV0rLVswLTldK3xcKi9bMC05XSspKVxzKyg/OlwqfCg/OlswLTldfDFbMC05XXwyWzAtM118WzAtOV0rLVswLTldK3xcKi9bMC05XSspKVxzKyg/OlwqfCg/OlsxLTldfFsxMl1bMC05XXwzWzAxXXxbMC05XSstWzAtOV0rfFwqL1swLTldKykpXHMrKD86XCp8KD86WzEtOV18MVswLTJdfFswLTldKy1bMC05XSt8XCovWzAtOV0rKSlccysoPzpcKnwoPzpbMC02XXxbMC02XS1bMC02XXxcKi9bMC05XSspKSQ="
}
],
"transformers": []
}
] ]
}, },
"default_value": "*/30 * * * *", "default_value": "*/30 * * * *",

View File

@@ -87,9 +87,28 @@
"type": { "type": {
"dataType": "string", "dataType": "string",
"elements": [ "elements": [
{
"elementType": "span",
"elementOptions": [
{
"cssClasses": "input-group-addon validityCheck"
},
{
"getStringKey": "Gen_ValidIcon"
}
],
"transformers": []
},
{ {
"elementType": "input", "elementType": "input",
"elementOptions": [], "elementOptions": [
{
"onChange": "validateRegex(this)"
},
{
"base64Regex": "Xig/OlwqfCg/OlswLTldfFsxLTVdWzAtOV18WzAtOV0rLVswLTldK3xcKi9bMC05XSspKVxzKyg/OlwqfCg/OlswLTldfDFbMC05XXwyWzAtM118WzAtOV0rLVswLTldK3xcKi9bMC05XSspKVxzKyg/OlwqfCg/OlsxLTldfFsxMl1bMC05XXwzWzAxXXxbMC05XSstWzAtOV0rfFwqL1swLTldKykpXHMrKD86XCp8KD86WzEtOV18MVswLTJdfFswLTldKy1bMC05XSt8XCovWzAtOV0rKSlccysoPzpcKnwoPzpbMC02XXxbMC02XS1bMC02XXxcKi9bMC05XSspKSQ="
}
],
"transformers": [] "transformers": []
} }
] ]

View File

@@ -114,7 +114,30 @@
"type": { "type": {
"dataType": "string", "dataType": "string",
"elements": [ "elements": [
{ "elementType": "input", "elementOptions": [], "transformers": [] } {
"elementType": "span",
"elementOptions": [
{
"cssClasses": "input-group-addon validityCheck"
},
{
"getStringKey": "Gen_ValidIcon"
}
],
"transformers": []
},
{
"elementType": "input",
"elementOptions": [
{
"onChange": "validateRegex(this)"
},
{
"base64Regex": "Xig/OlwqfCg/OlswLTldfFsxLTVdWzAtOV18WzAtOV0rLVswLTldK3xcKi9bMC05XSspKVxzKyg/OlwqfCg/OlswLTldfDFbMC05XXwyWzAtM118WzAtOV0rLVswLTldK3xcKi9bMC05XSspKVxzKyg/OlwqfCg/OlsxLTldfFsxMl1bMC05XXwzWzAxXXxbMC05XSstWzAtOV0rfFwqL1swLTldKykpXHMrKD86XCp8KD86WzEtOV18MVswLTJdfFswLTldKy1bMC05XSt8XCovWzAtOV0rKSlccysoPzpcKnwoPzpbMC02XXxbMC02XS1bMC02XXxcKi9bMC05XSspKSQ="
}
],
"transformers": []
}
] ]
}, },
"default_value": "0 2 * * *", "default_value": "0 2 * * *",

View File

@@ -114,7 +114,30 @@
"type": { "type": {
"dataType": "string", "dataType": "string",
"elements": [ "elements": [
{ "elementType": "input", "elementOptions": [], "transformers": [] } {
"elementType": "span",
"elementOptions": [
{
"cssClasses": "input-group-addon validityCheck"
},
{
"getStringKey": "Gen_ValidIcon"
}
],
"transformers": []
},
{
"elementType": "input",
"elementOptions": [
{
"onChange": "validateRegex(this)"
},
{
"base64Regex": "Xig/OlwqfCg/OlswLTldfFsxLTVdWzAtOV18WzAtOV0rLVswLTldK3xcKi9bMC05XSspKVxzKyg/OlwqfCg/OlswLTldfDFbMC05XXwyWzAtM118WzAtOV0rLVswLTldK3xcKi9bMC05XSspKVxzKyg/OlwqfCg/OlsxLTldfFsxMl1bMC05XXwzWzAxXXxbMC05XSstWzAtOV0rfFwqL1swLTldKykpXHMrKD86XCp8KD86WzEtOV18MVswLTJdfFswLTldKy1bMC05XSt8XCovWzAtOV0rKSlccysoPzpcKnwoPzpbMC02XXxbMC02XS1bMC02XXxcKi9bMC05XSspKSQ="
}
],
"transformers": []
}
] ]
}, },
"default_value": "*/30 * * * *", "default_value": "*/30 * * * *",

View File

@@ -132,7 +132,30 @@
"type": { "type": {
"dataType": "string", "dataType": "string",
"elements": [ "elements": [
{ "elementType": "input", "elementOptions": [], "transformers": [] } {
"elementType": "span",
"elementOptions": [
{
"cssClasses": "input-group-addon validityCheck"
},
{
"getStringKey": "Gen_ValidIcon"
}
],
"transformers": []
},
{
"elementType": "input",
"elementOptions": [
{
"onChange": "validateRegex(this)"
},
{
"base64Regex": "Xig/OlwqfCg/OlswLTldfFsxLTVdWzAtOV18WzAtOV0rLVswLTldK3xcKi9bMC05XSspKVxzKyg/OlwqfCg/OlswLTldfDFbMC05XXwyWzAtM118WzAtOV0rLVswLTldK3xcKi9bMC05XSspKVxzKyg/OlwqfCg/OlsxLTldfFsxMl1bMC05XXwzWzAxXXxbMC05XSstWzAtOV0rfFwqL1swLTldKykpXHMrKD86XCp8KD86WzEtOV18MVswLTJdfFswLTldKy1bMC05XSt8XCovWzAtOV0rKSlccysoPzpcKnwoPzpbMC02XXxbMC02XS1bMC02XXxcKi9bMC05XSspKSQ="
}
],
"transformers": []
}
] ]
}, },
"default_value": "*/30 * * * *", "default_value": "*/30 * * * *",

View File

@@ -184,7 +184,30 @@
"type": { "type": {
"dataType": "string", "dataType": "string",
"elements": [ "elements": [
{ "elementType": "input", "elementOptions": [], "transformers": [] } {
"elementType": "span",
"elementOptions": [
{
"cssClasses": "input-group-addon validityCheck"
},
{
"getStringKey": "Gen_ValidIcon"
}
],
"transformers": []
},
{
"elementType": "input",
"elementOptions": [
{
"onChange": "validateRegex(this)"
},
{
"base64Regex": "Xig/OlwqfCg/OlswLTldfFsxLTVdWzAtOV18WzAtOV0rLVswLTldK3xcKi9bMC05XSspKVxzKyg/OlwqfCg/OlswLTldfDFbMC05XXwyWzAtM118WzAtOV0rLVswLTldK3xcKi9bMC05XSspKVxzKyg/OlwqfCg/OlsxLTldfFsxMl1bMC05XXwzWzAxXXxbMC05XSstWzAtOV0rfFwqL1swLTldKykpXHMrKD86XCp8KD86WzEtOV18MVswLTJdfFswLTldKy1bMC05XSt8XCovWzAtOV0rKSlccysoPzpcKnwoPzpbMC02XXxbMC02XS1bMC02XXxcKi9bMC05XSspKSQ="
}
],
"transformers": []
}
] ]
}, },
"default_value": "*/5 * * * *", "default_value": "*/5 * * * *",

View File

@@ -460,7 +460,30 @@
"type": { "type": {
"dataType": "string", "dataType": "string",
"elements": [ "elements": [
{ "elementType": "input", "elementOptions": [], "transformers": [] } {
"elementType": "span",
"elementOptions": [
{
"cssClasses": "input-group-addon validityCheck"
},
{
"getStringKey": "Gen_ValidIcon"
}
],
"transformers": []
},
{
"elementType": "input",
"elementOptions": [
{
"onChange": "validateRegex(this)"
},
{
"base64Regex": "Xig/OlwqfCg/OlswLTldfFsxLTVdWzAtOV18WzAtOV0rLVswLTldK3xcKi9bMC05XSspKVxzKyg/OlwqfCg/OlswLTldfDFbMC05XXwyWzAtM118WzAtOV0rLVswLTldK3xcKi9bMC05XSspKVxzKyg/OlwqfCg/OlsxLTldfFsxMl1bMC05XXwzWzAxXXxbMC05XSstWzAtOV0rfFwqL1swLTldKykpXHMrKD86XCp8KD86WzEtOV18MVswLTJdfFswLTldKy1bMC05XSt8XCovWzAtOV0rKSlccysoPzpcKnwoPzpbMC02XXxbMC02XS1bMC02XXxcKi9bMC05XSspKSQ="
}
],
"transformers": []
}
] ]
}, },
"default_value": "0 2 * * *", "default_value": "0 2 * * *",

View File

@@ -132,7 +132,30 @@
"type": { "type": {
"dataType": "string", "dataType": "string",
"elements": [ "elements": [
{ "elementType": "input", "elementOptions": [], "transformers": [] } {
"elementType": "span",
"elementOptions": [
{
"cssClasses": "input-group-addon validityCheck"
},
{
"getStringKey": "Gen_ValidIcon"
}
],
"transformers": []
},
{
"elementType": "input",
"elementOptions": [
{
"onChange": "validateRegex(this)"
},
{
"base64Regex": "Xig/OlwqfCg/OlswLTldfFsxLTVdWzAtOV18WzAtOV0rLVswLTldK3xcKi9bMC05XSspKVxzKyg/OlwqfCg/OlswLTldfDFbMC05XXwyWzAtM118WzAtOV0rLVswLTldK3xcKi9bMC05XSspKVxzKyg/OlwqfCg/OlsxLTldfFsxMl1bMC05XXwzWzAxXXxbMC05XSstWzAtOV0rfFwqL1swLTldKykpXHMrKD86XCp8KD86WzEtOV18MVswLTJdfFswLTldKy1bMC05XSt8XCovWzAtOV0rKSlccysoPzpcKnwoPzpbMC02XXxbMC02XS1bMC02XXxcKi9bMC05XSspKSQ="
}
],
"transformers": []
}
] ]
}, },
"default_value": "*/30 * * * *", "default_value": "*/30 * * * *",

View File

@@ -76,7 +76,30 @@
"type": { "type": {
"dataType": "string", "dataType": "string",
"elements": [ "elements": [
{ "elementType": "input", "elementOptions": [], "transformers": [] } {
"elementType": "span",
"elementOptions": [
{
"cssClasses": "input-group-addon validityCheck"
},
{
"getStringKey": "Gen_ValidIcon"
}
],
"transformers": []
},
{
"elementType": "input",
"elementOptions": [
{
"onChange": "validateRegex(this)"
},
{
"base64Regex": "Xig/OlwqfCg/OlswLTldfFsxLTVdWzAtOV18WzAtOV0rLVswLTldK3xcKi9bMC05XSspKVxzKyg/OlwqfCg/OlswLTldfDFbMC05XXwyWzAtM118WzAtOV0rLVswLTldK3xcKi9bMC05XSspKVxzKyg/OlwqfCg/OlsxLTldfFsxMl1bMC05XXwzWzAxXXxbMC05XSstWzAtOV0rfFwqL1swLTldKykpXHMrKD86XCp8KD86WzEtOV18MVswLTJdfFswLTldKy1bMC05XSt8XCovWzAtOV0rKSlccysoPzpcKnwoPzpbMC02XXxbMC02XS1bMC02XXxcKi9bMC05XSspKSQ="
}
],
"transformers": []
}
] ]
}, },

View File

@@ -166,7 +166,30 @@
"type": { "type": {
"dataType": "string", "dataType": "string",
"elements": [ "elements": [
{ "elementType": "input", "elementOptions": [], "transformers": [] } {
"elementType": "span",
"elementOptions": [
{
"cssClasses": "input-group-addon validityCheck"
},
{
"getStringKey": "Gen_ValidIcon"
}
],
"transformers": []
},
{
"elementType": "input",
"elementOptions": [
{
"onChange": "validateRegex(this)"
},
{
"base64Regex": "Xig/OlwqfCg/OlswLTldfFsxLTVdWzAtOV18WzAtOV0rLVswLTldK3xcKi9bMC05XSspKVxzKyg/OlwqfCg/OlswLTldfDFbMC05XXwyWzAtM118WzAtOV0rLVswLTldK3xcKi9bMC05XSspKVxzKyg/OlwqfCg/OlsxLTldfFsxMl1bMC05XXwzWzAxXXxbMC05XSstWzAtOV0rfFwqL1swLTldKykpXHMrKD86XCp8KD86WzEtOV18MVswLTJdfFswLTldKy1bMC05XSt8XCovWzAtOV0rKSlccysoPzpcKnwoPzpbMC02XXxbMC02XS1bMC02XXxcKi9bMC05XSspKSQ="
}
],
"transformers": []
}
] ]
}, },
"default_value": "*/30 * * * *", "default_value": "*/30 * * * *",

View File

@@ -1,5 +1,6 @@
from time import strftime from time import strftime
import pytz, all_timezones import pytz
from pytz import timezone, all_timezones, UnknownTimeZoneError
import sys import sys
import re import re
import base64 import base64

View File

@@ -495,7 +495,30 @@
"type": { "type": {
"dataType": "string", "dataType": "string",
"elements": [ "elements": [
{ "elementType": "input", "elementOptions": [], "transformers": [] } {
"elementType": "span",
"elementOptions": [
{
"cssClasses": "input-group-addon validityCheck"
},
{
"getStringKey": "Gen_ValidIcon"
}
],
"transformers": []
},
{
"elementType": "input",
"elementOptions": [
{
"onChange": "validateRegex(this)"
},
{
"base64Regex": "Xig/OlwqfCg/OlswLTldfFsxLTVdWzAtOV18WzAtOV0rLVswLTldK3xcKi9bMC05XSspKVxzKyg/OlwqfCg/OlswLTldfDFbMC05XXwyWzAtM118WzAtOV0rLVswLTldK3xcKi9bMC05XSspKVxzKyg/OlwqfCg/OlsxLTldfFsxMl1bMC05XXwzWzAxXXxbMC05XSstWzAtOV0rfFwqL1swLTldKykpXHMrKD86XCp8KD86WzEtOV18MVswLTJdfFswLTldKy1bMC05XSt8XCovWzAtOV0rKSlccysoPzpcKnwoPzpbMC02XXxbMC02XS1bMC02XXxcKi9bMC05XSspKSQ="
}
],
"transformers": []
}
] ]
}, },
"default_value": "0 2 * * *", "default_value": "0 2 * * *",

View File

@@ -82,7 +82,30 @@
"type": { "type": {
"dataType": "string", "dataType": "string",
"elements": [ "elements": [
{ "elementType": "input", "elementOptions": [], "transformers": [] } {
"elementType": "span",
"elementOptions": [
{
"cssClasses": "input-group-addon validityCheck"
},
{
"getStringKey": "Gen_ValidIcon"
}
],
"transformers": []
},
{
"elementType": "input",
"elementOptions": [
{
"onChange": "validateRegex(this)"
},
{
"base64Regex": "Xig/OlwqfCg/OlswLTldfFsxLTVdWzAtOV18WzAtOV0rLVswLTldK3xcKi9bMC05XSspKVxzKyg/OlwqfCg/OlswLTldfDFbMC05XXwyWzAtM118WzAtOV0rLVswLTldK3xcKi9bMC05XSspKVxzKyg/OlwqfCg/OlsxLTldfFsxMl1bMC05XXwzWzAxXXxbMC05XSstWzAtOV0rfFwqL1swLTldKykpXHMrKD86XCp8KD86WzEtOV18MVswLTJdfFswLTldKy1bMC05XSt8XCovWzAtOV0rKSlccysoPzpcKnwoPzpbMC02XXxbMC02XS1bMC02XXxcKi9bMC05XSspKSQ="
}
],
"transformers": []
}
] ]
}, },

View File

@@ -124,7 +124,30 @@
"type": { "type": {
"dataType": "string", "dataType": "string",
"elements": [ "elements": [
{ "elementType": "input", "elementOptions": [], "transformers": [] } {
"elementType": "span",
"elementOptions": [
{
"cssClasses": "input-group-addon validityCheck"
},
{
"getStringKey": "Gen_ValidIcon"
}
],
"transformers": []
},
{
"elementType": "input",
"elementOptions": [
{
"onChange": "validateRegex(this)"
},
{
"base64Regex": "Xig/OlwqfCg/OlswLTldfFsxLTVdWzAtOV18WzAtOV0rLVswLTldK3xcKi9bMC05XSspKVxzKyg/OlwqfCg/OlswLTldfDFbMC05XXwyWzAtM118WzAtOV0rLVswLTldK3xcKi9bMC05XSspKVxzKyg/OlwqfCg/OlsxLTldfFsxMl1bMC05XXwzWzAxXXxbMC05XSstWzAtOV0rfFwqL1swLTldKykpXHMrKD86XCp8KD86WzEtOV18MVswLTJdfFswLTldKy1bMC05XSt8XCovWzAtOV0rKSlccysoPzpcKnwoPzpbMC02XXxbMC02XS1bMC02XXxcKi9bMC05XSspKSQ="
}
],
"transformers": []
}
] ]
}, },
"default_value": "0 4 * * 3", "default_value": "0 4 * * 3",

View File

@@ -74,7 +74,30 @@
"type": { "type": {
"dataType": "string", "dataType": "string",
"elements": [ "elements": [
{ "elementType": "input", "elementOptions": [], "transformers": [] } {
"elementType": "span",
"elementOptions": [
{
"cssClasses": "input-group-addon validityCheck"
},
{
"getStringKey": "Gen_ValidIcon"
}
],
"transformers": []
},
{
"elementType": "input",
"elementOptions": [
{
"onChange": "validateRegex(this)"
},
{
"base64Regex": "Xig/OlwqfCg/OlswLTldfFsxLTVdWzAtOV18WzAtOV0rLVswLTldK3xcKi9bMC05XSspKVxzKyg/OlwqfCg/OlswLTldfDFbMC05XXwyWzAtM118WzAtOV0rLVswLTldK3xcKi9bMC05XSspKVxzKyg/OlwqfCg/OlsxLTldfFsxMl1bMC05XXwzWzAxXXxbMC05XSstWzAtOV0rfFwqL1swLTldKykpXHMrKD86XCp8KD86WzEtOV18MVswLTJdfFswLTldKy1bMC05XSt8XCovWzAtOV0rKSlccysoPzpcKnwoPzpbMC02XXxbMC02XS1bMC02XXxcKi9bMC05XSspKSQ="
}
],
"transformers": []
}
] ]
}, },
"default_value": "*/5 * * * *", "default_value": "*/5 * * * *",

View File

@@ -408,7 +408,30 @@
"type": { "type": {
"dataType": "string", "dataType": "string",
"elements": [ "elements": [
{ "elementType": "input", "elementOptions": [], "transformers": [] } {
"elementType": "span",
"elementOptions": [
{
"cssClasses": "input-group-addon validityCheck"
},
{
"getStringKey": "Gen_ValidIcon"
}
],
"transformers": []
},
{
"elementType": "input",
"elementOptions": [
{
"onChange": "validateRegex(this)"
},
{
"base64Regex": "Xig/OlwqfCg/OlswLTldfFsxLTVdWzAtOV18WzAtOV0rLVswLTldK3xcKi9bMC05XSspKVxzKyg/OlwqfCg/OlswLTldfDFbMC05XXwyWzAtM118WzAtOV0rLVswLTldK3xcKi9bMC05XSspKVxzKyg/OlwqfCg/OlsxLTldfFsxMl1bMC05XXwzWzAxXXxbMC05XSstWzAtOV0rfFwqL1swLTldKykpXHMrKD86XCp8KD86WzEtOV18MVswLTJdfFswLTldKy1bMC05XSt8XCovWzAtOV0rKSlccysoPzpcKnwoPzpbMC02XXxbMC02XS1bMC02XXxcKi9bMC05XSspKSQ="
}
],
"transformers": []
}
] ]
}, },
"default_value": "0 2 * * *", "default_value": "0 2 * * *",

View File

@@ -595,7 +595,8 @@ $settingsJSON_DB = json_encode($settings, JSON_HEX_TAG | JSON_HEX_AMP | JSON_HEX
onChange, onChange,
customParams, customParams,
customId, customId,
columns columns,
base64Regex
} = handleElementOptions('none', elementOptions, transformers, val = ""); } = handleElementOptions('none', elementOptions, transformers, val = "");
let value; let value;