Compare commits

..

22 Commits

Author SHA1 Message Date
Hosted Weblate
7e573282d0 Merge branch 'origin/main' into Weblate.
Some checks failed
Code checks / check-url-paths (push) Has been cancelled
docker / docker_dev (push) Has been cancelled
Deploy MkDocs / deploy (push) Has been cancelled
2025-07-27 01:42:30 +00:00
jokob-sk
d08368e4f5 net devices fix 2025-07-27 11:26:12 +10:00
Hosted Weblate
2c1718bb0e Merge branch 'origin/main' into Weblate. 2025-07-27 01:22:48 +00:00
Deleted User
5a0bf03b81 Translated using Weblate (Ukrainian)
Currently translated at 92.7% (701 of 756 strings)

Translation: NetAlertX/core
Translate-URL: https://hosted.weblate.org/projects/pialert/core/uk/
2025-07-27 01:22:46 +00:00
anton garcias
6978c9446c Translated using Weblate (Catalan)
Currently translated at 90.0% (681 of 756 strings)

Translation: NetAlertX/core
Translate-URL: https://hosted.weblate.org/projects/pialert/core/ca/
2025-07-27 01:22:45 +00:00
HAMAD ABDULLA
d3fd160cf3 Translated using Weblate (Arabic)
Currently translated at 89.9% (680 of 756 strings)

Translation: NetAlertX/core
Translate-URL: https://hosted.weblate.org/projects/pialert/core/ar/
2025-07-27 01:22:44 +00:00
Ondřej Karaffa
c3421c8699 Translated using Weblate (Czech)
Currently translated at 7.1% (54 of 756 strings)

Translation: NetAlertX/core
Translate-URL: https://hosted.weblate.org/projects/pialert/core/cs/
2025-07-27 01:22:43 +00:00
blomusti
0a3ebc931b Translated using Weblate (Turkish)
Currently translated at 60.4% (457 of 756 strings)

Translation: NetAlertX/core
Translate-URL: https://hosted.weblate.org/projects/pialert/core/tr/
2025-07-27 01:22:42 +00:00
Ptsa Daniel
83c593a1e2 Translated using Weblate (Chinese (Simplified Han script))
Currently translated at 92.7% (701 of 756 strings)

Translation: NetAlertX/core
Translate-URL: https://hosted.weblate.org/projects/pialert/core/zh_Hans/
2025-07-27 01:22:41 +00:00
Adam Stańczyk
60c812327a Translated using Weblate (Polish)
Currently translated at 91.2% (690 of 756 strings)

Translation: NetAlertX/core
Translate-URL: https://hosted.weblate.org/projects/pialert/core/pl/
2025-07-27 01:22:40 +00:00
Cesar Osvaldo Müller
d27ba5c046 Translated using Weblate (Portuguese (Brazil))
Currently translated at 53.5% (405 of 756 strings)

Translation: NetAlertX/core
Translate-URL: https://hosted.weblate.org/projects/pialert/core/pt_BR/
2025-07-27 01:22:39 +00:00
Massimo Pissarello
120a88d12d Translated using Weblate (Italian)
Currently translated at 92.5% (700 of 756 strings)

Translation: NetAlertX/core
Translate-URL: https://hosted.weblate.org/projects/pialert/core/it/
2025-07-27 01:22:38 +00:00
Safeguard
054df2ed79 Translated using Weblate (Russian)
Currently translated at 91.2% (690 of 756 strings)

Translation: NetAlertX/core
Translate-URL: https://hosted.weblate.org/projects/pialert/core/ru/
2025-07-27 01:22:37 +00:00
Marcus Isdahl
94240f61ca Translated using Weblate (Norwegian Bokmål)
Currently translated at 74.4% (563 of 756 strings)

Translation: NetAlertX/core
Translate-URL: https://hosted.weblate.org/projects/pialert/core/nb_NO/
2025-07-27 01:22:36 +00:00
BlueTurtle
9c77a25d9a Translated using Weblate (French)
Currently translated at 92.7% (701 of 756 strings)

Translation: NetAlertX/core
Translate-URL: https://hosted.weblate.org/projects/pialert/core/fr/
2025-07-27 01:22:35 +00:00
Anonymous
7819f2774c Translated using Weblate (Spanish)
Currently translated at 89.0% (673 of 756 strings)

Translation: NetAlertX/core
Translate-URL: https://hosted.weblate.org/projects/pialert/core/es/
2025-07-27 01:22:34 +00:00
Ettore Atalan
a07bdd7469 Translated using Weblate (German)
Currently translated at 82.4% (623 of 756 strings)

Translation: NetAlertX/core
Translate-URL: https://hosted.weblate.org/projects/pialert/core/de/
2025-07-27 01:22:32 +00:00
jokob-sk
68c3712539 Merge branch 'main' of https://github.com/jokob-sk/NetAlertX 2025-07-27 11:16:58 +10:00
jokob-sk
be5fc6dccb css fixes, removal of ionicons 2025-07-27 11:16:35 +10:00
Hosted Weblate
414110e575 Merge branch 'origin/main' into Weblate. 2025-07-26 23:02:37 +00:00
Sylvain Pichon
bd641273ff Translated using Weblate (French)
Currently translated at 100.0% (755 of 755 strings)

Translation: NetAlertX/core
Translate-URL: https://hosted.weblate.org/projects/pialert/core/fr/
2025-07-26 23:02:35 +00:00
jokob-sk
404a97fb89 network devices list, strings cleanup 2025-07-27 08:58:54 +10:00
40 changed files with 2219 additions and 2311 deletions

View File

@@ -2101,7 +2101,12 @@ input[readonly] {
transition: opacity 0.3s ease-in-out;
pointer-events: none;
display: block;
z-index: 999;
z-index: 800;
}
.fa-spinner
{
font-size: initial;
}
#loadingSpinner.visible {

View File

@@ -110,7 +110,7 @@ function initializeEventsDatatable (eventsRows) {
'processing' : true,
'language' : {
processing: '<table><td width="130px" align="middle"><?= lang("DevDetail_Loading");?></td>'+
'<td><i class="ion ion-ios-loop-strong fa-spin fa-2x fa-fw"></i></td></table>',
'<td><i class="fa-solid fa-spinner fa-spin-pulse"></i></td></table>',
emptyTable: 'No data',
"lengthMenu": "<?= lang('Events_Tablelenght');?>",
"search": "<?= lang('Events_Searchbox');?>: ",

View File

@@ -74,7 +74,7 @@ function initializeSessionsDatatable (sessionsRows) {
'processing' : true,
'language' : {
processing: '<table><td width="130px" align="middle"><?= lang("DevDetail_Loading");?></td>'+
'<td><i class="ion ion-ios-loop-strong fa-spin fa-2x fa-fw">'+
'<td><i class="fa-solid fa-spinner fa-spin-pulse"></i>'+
'</td></table>',
emptyTable: 'No data',
"lengthMenu": "<?= lang('Events_Tablelenght');?>",

View File

@@ -266,14 +266,16 @@ function getDevicesTotals() {
function processDeviceTotals(devicesData) {
// Define filter conditions and corresponding objects
const filters = [
{ status: 'my_devices', color: 'bg-aqua', label: getString('Device_Shortcut_AllDevices'), icon: 'fa-laptop' },
{ status: 'all', color: 'bg-aqua', label: getString('Gen_All_Devices'), icon: 'fa-laptop' },
{ status: 'connected', color: 'bg-green', label: getString('Device_Shortcut_Connected'), icon: 'fa-plug' },
{ status: 'favorites', color: 'bg-yellow', label: getString('Device_Shortcut_Favorites'), icon: 'fa-star' },
{ status: 'new', color: 'bg-yellow', label: getString('Device_Shortcut_NewDevices'), icon: 'fa-plus' },
{ status: 'down', color: 'bg-red', label: getString('Device_Shortcut_DownOnly'), icon: 'fa-warning' },
{ status: 'archived', color: 'bg-gray', label: getString('Device_Shortcut_Archived'), icon: 'fa-eye-slash' },
{ status: 'offline', color: 'bg-gray', label: getString('Gen_Offline'), icon: 'fa-xmark' }
{ status: 'my_devices', color: 'bg-aqua', label: getString('Device_Shortcut_AllDevices'), icon: 'fa-laptop' },
{ status: 'all', color: 'bg-aqua', label: getString('Gen_All_Devices'), icon: 'fa-laptop' },
{ status: 'connected', color: 'bg-green', label: getString('Device_Shortcut_Connected'), icon: 'fa-plug' },
{ status: 'favorites', color: 'bg-yellow', label: getString('Device_Shortcut_Favorites'), icon: 'fa-star' },
{ status: 'new', color: 'bg-yellow', label: getString('Device_Shortcut_NewDevices'), icon: 'fa-plus' },
{ status: 'down', color: 'bg-red', label: getString('Device_Shortcut_DownOnly'), icon: 'fa-warning' },
{ status: 'archived', color: 'bg-gray', label: getString('Device_Shortcut_Archived'), icon: 'fa-eye-slash' },
{ status: 'offline', color: 'bg-gray', label: getString('Gen_Offline'), icon: 'fa-xmark' },
{ status: 'all_devices', color: 'bg-gray', label: getString('Gen_All_Devices'), icon: 'fa-laptop' },
{ status: 'network_devices', color: 'bg-aqua', label: getString('Network_Devices'), icon: 'fa-sitemap fa-rotate-270' }
];
// Initialize an empty array to store the final objects
@@ -299,13 +301,7 @@ function processDeviceTotals(devicesData) {
}
});
// Render info boxes/tile cards
console.log(getSetting('UI_hide_empty'));
console.log(dataArray);
console.log(devicesData);
// Render info boxes/tile cards
renderInfoboxes(dataArray);
}
@@ -564,15 +560,17 @@ function initializeDatatable (status) {
// Define color & title for the status selected
switch (deviceStatus) {
case 'my_devices': tableTitle = getString('Device_Shortcut_AllDevices'); color = 'aqua'; break;
case 'connected': tableTitle = getString('Device_Shortcut_Connected'); color = 'green'; break;
case 'all': tableTitle = getString('Gen_All_Devices'); color = 'aqua'; break;
case 'favorites': tableTitle = getString('Device_Shortcut_Favorites'); color = 'yellow'; break;
case 'new': tableTitle = getString('Device_Shortcut_NewDevices'); color = 'yellow'; break;
case 'down': tableTitle = getString('Device_Shortcut_DownOnly'); color = 'red'; break;
case 'archived': tableTitle = getString('Device_Shortcut_Archived'); color = 'gray'; break;
case 'offline': tableTitle = getString('Gen_Offline'); color = 'gray'; break;
default: tableTitle = getString('Device_Shortcut_Devices'); color = 'gray'; break;
case 'my_devices': tableTitle = getString('Device_Shortcut_AllDevices'); color = 'aqua'; break;
case 'connected': tableTitle = getString('Device_Shortcut_Connected'); color = 'green'; break;
case 'all': tableTitle = getString('Gen_All_Devices'); color = 'aqua'; break;
case 'favorites': tableTitle = getString('Device_Shortcut_Favorites'); color = 'yellow'; break;
case 'new': tableTitle = getString('Device_Shortcut_NewDevices'); color = 'yellow'; break;
case 'down': tableTitle = getString('Device_Shortcut_DownOnly'); color = 'red'; break;
case 'archived': tableTitle = getString('Device_Shortcut_Archived'); color = 'gray'; break;
case 'offline': tableTitle = getString('Gen_Offline'); color = 'gray'; break;
case 'all_devices': tableTitle = getString('Gen_All_Devices'); color = 'gray'; break;
case 'network_devices': tableTitle = getString('Network_Devices'); color = 'aqua'; break;
default: tableTitle = getString('Device_Shortcut_Devices'); color = 'gray'; break;
}
// Set title and color

View File

@@ -2,6 +2,10 @@
require 'php/templates/header.php';
?>
<script>
showSpinner();
</script>
<!-- ----------------------------------------------------------------------- -->
<!-- Page ------------------------------------------------------------------ -->
@@ -67,7 +71,7 @@
<div class="inner"> <h3 id="eventsNewDevices"> -- </h3>
<p class="infobox_label"><?= lang('Events_Shortcut_NewDevices');?></p>
</div>
<div class="icon"> <i class="ion ion-plus-round text-yellow-40"></i> </div>
<div class="icon"> <i class="fa-solid fa-circle-plus text-yellow-40"></i> </div>
</div>
</a>
</div>
@@ -238,7 +242,7 @@ function initializeDatatable () {
// Processing
'processing' : true,
'language' : {
processing: '<table><td width="130px" align="middle"><?= lang("Events_Loading");?></td><td><i class="ion ion-ios-loop-strong fa-spin fa-2x fa-fw"></td></table>',
processing: '<table><td width="130px" align="middle"><?= lang("Events_Loading");?></td><td><i class="fa-solid fa-spinner fa-spin-pulse"></i></td></table>',
emptyTable: 'No data',
"lengthMenu": "<?= lang('Events_Tablelenght');?>",
"search": "<?= lang('Events_Searchbox');?>: ",
@@ -247,6 +251,9 @@ function initializeDatatable () {
"previous": "<?= lang('Events_Table_nav_prev');?>"
},
"info": "<?= lang('Events_Table_info');?>",
},
initComplete: function(settings, json) {
hideSpinner(); // Called after the DataTable is fully initialized
}
});

Binary file not shown.

File diff suppressed because it is too large Load Diff

Before

Width:  |  Height:  |  Size: 326 KiB

After

Width:  |  Height:  |  Size: 305 KiB

Binary file not shown.

Binary file not shown.

BIN
front/lib/fonts/ionicons.woff2 Executable file

Binary file not shown.

Binary file not shown.

Binary file not shown.

View File

@@ -42,7 +42,6 @@
<script src="lib/datatables.net/js/jquery.dataTables.min.js"></script>
<script src="lib/datatables.net-bs/js/dataTables.bootstrap.min.js"></script>
<script src="lib/datatables.net/js/dataTables.select.min.js"></script>
<script src="lib/popper_tooltip/popper.min.js"></script>
<script src="js/common.js?v=<?php include 'php/templates/version.php'; ?>"></script>
<script src="js/modal.js?v=<?php include 'php/templates/version.php'; ?>"></script>
@@ -51,8 +50,6 @@
<script src="js/settings_utils.js?v=<?php include 'php/templates/version.php'; ?>"></script>
<script src="js/device.js?v=<?php include 'php/templates/version.php'; ?>"></script>
<!-- iCheck -->
<link rel="stylesheet" href="lib/iCheck/all.css">
@@ -146,7 +143,7 @@
<div class="panel panel-default pa_spinner">
<table>
<td id="loadingSpinnerText" width="130px" ></td>
<td><i class="ion ion-ios-loop-strong fa-spin fa-2x fa-fw"></td>
<td><i class="fa-solid fa-spinner fa-spin-pulse"></i></td>
</table>
</div>
</div>
@@ -312,7 +309,10 @@
<a href="devices.php#archived" onclick="forceLoadUrl('devices.php#archived')" > <?= lang("Device_Shortcut_Archived");?> </a>
</li>
<li>
<a href="devices.php#all" onclick="forceLoadUrl('devices.php#all_nodes')" > <?= lang("Device_Shortcut_AllNodes");?> </a>
<a href="devices.php#all_devices" onclick="forceLoadUrl('devices.php#all_devices')" > <?= lang("Gen_All_Devices");?> </a>
</li>
<li>
<a href="devices.php#network_devices" onclick="forceLoadUrl('devices.php#network_devices')" > <?= lang("Network_Devices");?> </a>
</li>
</ul>

1
front/php/templates/language/ar_ar.json Executable file → Normal file
View File

@@ -494,6 +494,7 @@
"Network_Cant_Assign_No_Node_Selected": "",
"Network_Configuration_Error": "خطأ في التكوين",
"Network_Connected": "متصل",
"Network_Devices": "",
"Network_ManageAdd": "إضافة إدارة",
"Network_ManageAdd_Name": "اسم الإدارة",
"Network_ManageAdd_Name_text": "نص اسم الإدارة",

1
front/php/templates/language/ca_ca.json Executable file → Normal file
View File

@@ -494,6 +494,7 @@
"Network_Cant_Assign_No_Node_Selected": "",
"Network_Configuration_Error": "Error de configuració",
"Network_Connected": "Dispositius connectats",
"Network_Devices": "",
"Network_ManageAdd": "Afegir dispositiu",
"Network_ManageAdd_Name": "Nom del dispositiu",
"Network_ManageAdd_Name_text": "Nom sense caràcters especials",

1
front/php/templates/language/cs_cz.json Executable file → Normal file
View File

@@ -494,6 +494,7 @@
"Network_Cant_Assign_No_Node_Selected": "",
"Network_Configuration_Error": "",
"Network_Connected": "",
"Network_Devices": "",
"Network_ManageAdd": "",
"Network_ManageAdd_Name": "",
"Network_ManageAdd_Name_text": "",

1
front/php/templates/language/de_de.json Executable file → Normal file
View File

@@ -531,6 +531,7 @@
"Network_Cant_Assign_No_Node_Selected": "",
"Network_Configuration_Error": "Konfigurationsfehler",
"Network_Connected": "Verbundene Geräte",
"Network_Devices": "",
"Network_ManageAdd": "Gerät hinzufügen",
"Network_ManageAdd_Name": "Name des Gerätes",
"Network_ManageAdd_Name_text": "Name ohne Sonderzeichen",

View File

@@ -39,8 +39,8 @@
"BackDevices_Backup_CopError": "The original database could not be saved.",
"BackDevices_Backup_Failed": "The backup executed partially successfully. The archive could not be created or is empty.",
"BackDevices_Backup_okay": "The backup executed successfully with the new archive",
"BackDevices_DBTools_DelDevError_a": "Error deleting Device",
"BackDevices_DBTools_DelDevError_b": "Error deleting Devices",
"BackDevices_DBTools_DelDevError_a": "Error deleting device",
"BackDevices_DBTools_DelDevError_b": "Error deleting devices",
"BackDevices_DBTools_DelDev_a": "Device deleted",
"BackDevices_DBTools_DelDev_b": "Devices deleted",
"BackDevices_DBTools_DelEvents": "Events deleted",
@@ -72,18 +72,18 @@
"DevDetail_CustomProperties_Title": "Custom Properties",
"DevDetail_CustomProps_reset_info": "This will remove your custom properties on this device and reset them to the default value.",
"DevDetail_DisplayFields_Title": "Display",
"DevDetail_EveandAl_AlertAllEvents": "Alert Events",
"DevDetail_EveandAl_AlertDown": "Alert Down",
"DevDetail_EveandAl_AlertAllEvents": "Alert events",
"DevDetail_EveandAl_AlertDown": "Alert down",
"DevDetail_EveandAl_Archived": "Archived",
"DevDetail_EveandAl_NewDevice": "New Device",
"DevDetail_EveandAl_NewDevice_Tooltip": "Will show the New status for the device and include it in lists when the New Devices filter is active. Doesn't affect notifications.",
"DevDetail_EveandAl_NewDevice": "New device",
"DevDetail_EveandAl_NewDevice_Tooltip": "Will show the New status for the device and include it in lists when the New devices filter is active. Doesn't affect notifications.",
"DevDetail_EveandAl_RandomMAC": "Random MAC",
"DevDetail_EveandAl_ScanCycle": "Scan device",
"DevDetail_EveandAl_ScanCycle_a": "Scan Device",
"DevDetail_EveandAl_ScanCycle_z": "Don&#39;t Scan Device",
"DevDetail_EveandAl_ScanCycle_a": "Scan device",
"DevDetail_EveandAl_ScanCycle_z": "Don&#39;t scan device",
"DevDetail_EveandAl_Skip": "Skip repeated notifications for",
"DevDetail_EveandAl_Title": "Notifications config",
"DevDetail_Events_CheckBox": "Hide Connection Events",
"DevDetail_Events_CheckBox": "Hide connection events",
"DevDetail_GoToNetworkNode": "Navigate to the Network page of the given node.",
"DevDetail_Icon": "Icon",
"DevDetail_Icon_Descr": "Enter a font awesome icon name without the fa- prefix or with complete class, e.g.: fa fa-brands fa-apple.",
@@ -201,7 +201,7 @@
"Device_MultiEdit_MassActions": "Mass actions:",
"Device_MultiEdit_Tooltip": "Careful. Clicking this will apply the value on the left to all devices selected above.",
"Device_Searchbox": "Search",
"Device_Shortcut_AllDevices": "My Devices",
"Device_Shortcut_AllDevices": "My devices",
"Device_Shortcut_AllNodes": "All Nodes",
"Device_Shortcut_Archived": "Archived",
"Device_Shortcut_Connected": "Connected",
@@ -209,7 +209,7 @@
"Device_Shortcut_DownAlerts": "Down & Offline",
"Device_Shortcut_DownOnly": "Down",
"Device_Shortcut_Favorites": "Favorites",
"Device_Shortcut_NewDevices": "New Devices",
"Device_Shortcut_NewDevices": "New devices",
"Device_Shortcut_OnlineChart": "Device presence",
"Device_TableHead_AlertDown": "Alert Down",
"Device_TableHead_Connected_Devices": "Connections",
@@ -267,7 +267,7 @@
"Events_Shortcut_DownAlerts": "Down Alerts",
"Events_Shortcut_Events": "Events",
"Events_Shortcut_MissSessions": "Missing Sessions",
"Events_Shortcut_NewDevices": "New Devices",
"Events_Shortcut_NewDevices": "New devices",
"Events_Shortcut_Sessions": "Sessions",
"Events_Shortcut_VoidSessions": "Voided Sessions",
"Events_TableHead_AdditionalInfo": "Additional Info",
@@ -293,9 +293,9 @@
"GRAPHQL_PORT_name": "GraphQL port",
"Gen_Action": "Action",
"Gen_Add": "Add",
"Gen_AddDevice": "Add Device",
"Gen_AddDevice": "Add device",
"Gen_Add_All": "Add all",
"Gen_All_Devices": "All Devices",
"Gen_All_Devices": "All devices",
"Gen_AreYouSure": "Are you sure?",
"Gen_Backup": "Run Backup",
"Gen_Cancel": "Cancel",
@@ -325,7 +325,7 @@
"Gen_Select": "Select",
"Gen_SelectIcon": "<i class=\"fa-solid fa-chevron-down fa-fade\"></i>",
"Gen_SelectToPreview": "Select to preview",
"Gen_Selected_Devices": "Selected Devices:",
"Gen_Selected_Devices": "Selected devices:",
"Gen_Switch": "Switch",
"Gen_Upd": "Updated successfully",
"Gen_Upd_Fail": "Update failed",
@@ -338,9 +338,9 @@
"Gen_create_new_device_info": "Devices are typically discovered using <a target=\"_blank\" href=\"https://github.com/jokob-sk/NetAlertX/tree/main/docs/PLUGINS.md\">plugins</a>. However, in certain cases, you may need to add devices manually. To explore specific scenarios check the <a target=\"_blank\" href=\"https://github.com/jokob-sk/NetAlertX/blob/main/docs/REMOTE_NETWORKS.md\">Remote Networks documentation</a>.",
"General_display_name": "General",
"General_icon": "<i class=\"fa fa-gears\"></i>",
"HRS_TO_KEEP_NEWDEV_description": "This is a maintenance setting <b>DELETING devices</b>. If enabled (<code>0</code> is disabled), devices marked as <b>New Device</b> will be deleted if their <b>First Session</b> time was older than the specified hours in this setting. Use this setting if you want to auto-delete <b>New Devices</b> after <code>X</code> hours.",
"HRS_TO_KEEP_NEWDEV_description": "This is a maintenance setting <b>DELETING devices</b>. If enabled (<code>0</code> is disabled), devices marked as <b>New device</b> will be deleted if their <b>First Session</b> time was older than the specified hours in this setting. Use this setting if you want to auto-delete <b>New devices</b> after <code>X</code> hours.",
"HRS_TO_KEEP_NEWDEV_name": "Delete new devices after",
"HRS_TO_KEEP_OFFDEV_description": "This is a maintenance setting <b>DELETING devices</b>. If enabled (<code>0</code> is disabled), devices that are <b>Offline</b> and their <b>Last Connection</b> date time is older than the specified hours in this setting, will be deleted. Use this setting if you want to auto-delete <b>Offline Devices</b> after <code>X</code> hours being offline.",
"HRS_TO_KEEP_OFFDEV_description": "This is a maintenance setting <b>DELETING devices</b>. If enabled (<code>0</code> is disabled), devices that are <b>Offline</b> and their <b>Last Connection</b> date time is older than the specified hours in this setting, will be deleted. Use this setting if you want to auto-delete <b>Offline devices</b> after <code>X</code> hours being offline.",
"HRS_TO_KEEP_OFFDEV_name": "Delete offline devices after",
"LOADED_PLUGINS_description": "Which Plugins to load. Adding plugins might slow the application. Read more about which plugins need to be enabled, types, or scanning options in the <a target=\"_blank\" href=\"https://github.com/jokob-sk/NetAlertX/tree/main/docs/PLUGINS.md\">plugins docs</a>. Unloaded plugins will lose your settings. Only <code>disabled</code> plugins can be unloaded.",
"LOADED_PLUGINS_name": "Loaded plugins",
@@ -364,20 +364,20 @@
"Maint_PurgeLog": "Purge log",
"Maint_RestartServer": "Restart server",
"Maint_Restart_Server_noti_text": "Are you sure you want to restart the backend server? This may casue app inconsistency. Backup your setup first. <br/> <br/> Note: This may take a few minutes.",
"Maintenance_InitCheck": "Init Check",
"Maintenance_InitCheck": "Init check",
"Maintenance_InitCheck_Checking": "Checking…",
"Maintenance_InitCheck_QuickSetupGuide": "Make sure you followed the <a href=\"https://jokob-sk.github.io/NetAlertX/INITIAL_SETUP/\" target=\"_blank\">quick setup guide</a>.",
"Maintenance_InitCheck_Success": "Application initialized succesfully!",
"Maintenance_ReCheck": "Retry Check",
"Maintenance_ReCheck": "Retry check",
"Maintenance_Running_Version": "Installed version",
"Maintenance_Status": "Status",
"Maintenance_Title": "Maintenance tools",
"Maintenance_Tool_DownloadConfig": "Settings Export",
"Maintenance_Tool_DownloadConfig": "Settings export",
"Maintenance_Tool_DownloadConfig_text": "Download a full backup of your Settings configuration stored in the <code>app.conf</code> file.",
"Maintenance_Tool_DownloadWorkflows": "Workflows Export",
"Maintenance_Tool_DownloadWorkflows": "Workflows export",
"Maintenance_Tool_DownloadWorkflows_text": "Download a full backup of your Workflows stored in the <code>workflows.json</code> file.",
"Maintenance_Tool_ExportCSV": "Devices Export (csv)",
"Maintenance_Tool_ExportCSV_noti": "Devices Export (csv)",
"Maintenance_Tool_ExportCSV": "Devices export (csv)",
"Maintenance_Tool_ExportCSV_noti": "Devices export (csv)",
"Maintenance_Tool_ExportCSV_noti_text": "Are you sure you want to generate a CSV file?",
"Maintenance_Tool_ExportCSV_text": "Generate a CSV (comma separated value) file containing the list of Devices including the Network relationships between Network Nodes and connected devices. You can also trigger this by accessing this URL <code>your_NetAlertX_url/php/server/devices.php?action=ExportCSV</code> or by enabling the <a href=\"settings.php#CSVBCKP_header\">CSV Backup</a> plugin.",
"Maintenance_Tool_ImportCSV": "Devices Import (csv)",
@@ -408,26 +408,26 @@
"Maintenance_Tool_del_ActHistory_noti": "Delete network activity",
"Maintenance_Tool_del_ActHistory_noti_text": "Are you sure you want to reset the network activity?",
"Maintenance_Tool_del_ActHistory_text": "The network activity graph is reset. This does not affect the events.",
"Maintenance_Tool_del_alldev": "Delete all Devices",
"Maintenance_Tool_del_alldev_noti": "Delete Devices",
"Maintenance_Tool_del_alldev": "Delete all devices",
"Maintenance_Tool_del_alldev_noti": "Delete devices",
"Maintenance_Tool_del_alldev_noti_text": "Are you sure you want to delete all devices?",
"Maintenance_Tool_del_alldev_text": "Before using this function, please make a backup. The deletion cannot be undone. All devices will be deleted from the database.",
"Maintenance_Tool_del_allevents": "Delete Events (Reset Presence)",
"Maintenance_Tool_del_allevents30": "Delete all Events older than 30 days",
"Maintenance_Tool_del_allevents30_noti": "Delete Events",
"Maintenance_Tool_del_allevents30_noti_text": "Are you sure you want to delete all Events older than 30 days? This resets Presence of all Devices.",
"Maintenance_Tool_del_allevents30_noti_text": "Are you sure you want to delete all Events older than 30 days? This resets presence of all devices.",
"Maintenance_Tool_del_allevents30_text": "Before using this function, please make a backup. The deletion cannot be undone. All events older than 30 days in the database will be deleted. At that moment the presence of all devices will be reset. This can lead to invalid sessions. This means that devices are displayed as \"present\" although they are offline. A scan while the device in question is online solves the problem.",
"Maintenance_Tool_del_allevents_noti": "Delete Events",
"Maintenance_Tool_del_allevents_noti_text": "Are you sure you want to delete all Events? This resets Presence of all Devices.",
"Maintenance_Tool_del_allevents_noti_text": "Are you sure you want to delete all Events? This resets presence of all devices.",
"Maintenance_Tool_del_allevents_text": "Before using this function, please make a backup. The deletion cannot be undone. All events in the database will be deleted. At that moment the presence of all devices will be reset. This can lead to invalid sessions. This means that devices are displayed as \"present\" although they are offline. A scan while the device in question is online solves the problem.",
"Maintenance_Tool_del_empty_macs": "Delete Devices with empty MACs",
"Maintenance_Tool_del_empty_macs_noti": "Delete Devices",
"Maintenance_Tool_del_empty_macs": "Delete devices with empty MACs",
"Maintenance_Tool_del_empty_macs_noti": "Delete devices",
"Maintenance_Tool_del_empty_macs_noti_text": "Are you sure you want to delete all devices with empty MAC addresses?<br>(maybe you prefer to archive it)",
"Maintenance_Tool_del_empty_macs_text": "Before using this function, please make a backup. The deletion cannot be undone. All devices without MAC will be deleted from the database.",
"Maintenance_Tool_del_selecteddev": "Delete selected devices",
"Maintenance_Tool_del_selecteddev_text": "Before using this function, please make a backup. The deletion cannot be undone. Selected devices will be deleted from the database.",
"Maintenance_Tool_del_unknowndev": "Delete (unknown) Devices",
"Maintenance_Tool_del_unknowndev_noti": "Delete (unknown) Devices",
"Maintenance_Tool_del_unknowndev": "Delete (unknown) devices",
"Maintenance_Tool_del_unknowndev_noti": "Delete (unknown) devices",
"Maintenance_Tool_del_unknowndev_noti_text": "Are you sure you want to delete all (unknown) and (name not found) devices?",
"Maintenance_Tool_del_unknowndev_text": "Before using this function, please make a backup. The deletion cannot be undone. All devices named (unknown) will be deleted from the database.",
"Maintenance_Tool_displayed_columns_text": "Change the visibility and order of the columns in the <a href=\"devices.php\"><b> <i class=\"fa fa-laptop\"></i> Devices</b></a> page.",
@@ -471,10 +471,10 @@
"Maintenance_themeselector_lable": "Select Skin",
"Maintenance_themeselector_text": "The change takes place on the server side, so it affects all devices in use.",
"Maintenance_version": "App updates",
"NETWORK_DEVICE_TYPES_description": "Which device types are allowed to be used as network devices in the Network view. The device type has to match exactly the <code>Type</code> setting on a specific device in Device details. Add it on the Device via the <code>+</code> button. Do not remove existing types, only add new ones.",
"NETWORK_DEVICE_TYPES_description": "Which device types are allowed to be used as network devices in the Network view. The device type has to match exactly the <code>Type</code> setting on a specific device in Device details. Add it on the device via the <code>+</code> button. Do not remove existing types, only add new ones.",
"NETWORK_DEVICE_TYPES_name": "Network device types",
"Navigation_About": "About",
"Navigation_AppEvents": "App Events",
"Navigation_AppEvents": "App events",
"Navigation_Devices": "Devices",
"Navigation_Donations": "Donations",
"Navigation_Events": "Events",
@@ -485,7 +485,7 @@
"Navigation_Notifications": "Notifications",
"Navigation_Plugins": "Plugins",
"Navigation_Presence": "Presence",
"Navigation_Report": "Sent Reports",
"Navigation_Report": "Sent reports",
"Navigation_Settings": "Settings",
"Navigation_SystemInfo": "System info",
"Navigation_Workflows": "Workflows",
@@ -494,30 +494,31 @@
"Network_Cant_Assign_No_Node_Selected": "Can't assign, no parent node selected.",
"Network_Configuration_Error": "Configuration Error",
"Network_Connected": "Connected devices",
"Network_ManageAdd": "Add Device",
"Network_ManageAdd_Name": "Device Name",
"Network_Devices": "Network devices",
"Network_ManageAdd": "Add device",
"Network_ManageAdd_Name": "Device name",
"Network_ManageAdd_Name_text": "Name without special characters",
"Network_ManageAdd_Port": "Port Count",
"Network_ManageAdd_Port_text": "leave blank for wifi and powerline",
"Network_ManageAdd_Submit": "Add Device",
"Network_ManageAdd_Type": "Device Type",
"Network_ManageAdd_Submit": "Add device",
"Network_ManageAdd_Type": "Device type",
"Network_ManageAdd_Type_text": "-- Select Type --",
"Network_ManageAssign": "Assign",
"Network_ManageDel": "Delete Device",
"Network_ManageDel": "Delete device",
"Network_ManageDel_Name": "Device to delete",
"Network_ManageDel_Name_text": "-- Select Device --",
"Network_ManageDel_Name_text": "-- Select device --",
"Network_ManageDel_Submit": "Delete",
"Network_ManageDevices": "Manage Devices",
"Network_ManageEdit": "Update Device",
"Network_ManageDevices": "Manage devices",
"Network_ManageEdit": "Update device",
"Network_ManageEdit_ID": "Device to update",
"Network_ManageEdit_ID_text": "-- Select Device for editing --",
"Network_ManageEdit_Name": "New Device Name",
"Network_ManageEdit_ID_text": "-- Select device for editing --",
"Network_ManageEdit_Name": "New device name",
"Network_ManageEdit_Name_text": "Name without special characters",
"Network_ManageEdit_Port": " New Port Count",
"Network_ManageEdit_Port_text": "leave blank for wifi and powerline",
"Network_ManageEdit_Submit": "Save Changes",
"Network_ManageEdit_Type": "New Device Type",
"Network_ManageEdit_Type_text": "-- Select Type --",
"Network_ManageEdit_Type": "New device type",
"Network_ManageEdit_Type_text": "-- Select type --",
"Network_ManageLeaf": "Manage assignment",
"Network_ManageUnassign": "Unassign",
"Network_NoAssignedDevices": "This network node does not have any assigned devices (leaf nodes). Assign one from bellow or go to the <b><i class=\"fa fa-info-circle\"></i> Details</b> tab of any device in <a href=\"devices.php\"><b> <i class=\"fa fa-laptop\"></i> Devices</b></a>, and assign it to a network <b><i class=\"fa fa-server\"></i> Node (MAC)</b> and <b><i class=\"fa fa-ethernet\"></i> Port</b> there.",
@@ -528,15 +529,15 @@
"Network_Root": "Root node",
"Network_Root_Not_Configured": "Select a network device type, for example a <b>Gateway</b>, in the <b>Type</b> field of the <a href=\"deviceDetails.php?mac=Internet\">the Internet root device</a> to start configuring this screen. <br/><br/> More documentation can be found in the <a href=\"https://github.com/jokob-sk/NetAlertX/blob/main/docs/NETWORK_TREE.md\" target=\"_blank\">How to setup your Network page</a> guide",
"Network_Root_Unconfigurable": "Unconfigurable root",
"Network_ShowArchived": "Show Archived",
"Network_ShowOffline": "Show Offline",
"Network_ShowArchived": "Show archived",
"Network_ShowOffline": "Show offline",
"Network_Table_Hostname": "Hostname",
"Network_Table_IP": "IP",
"Network_Table_State": "State",
"Network_Title": "Network overview",
"Network_UnassignedDevices": "Unassigned devices",
"Notifications_All": "All Notifications",
"Notifications_Mark_All_Read": "Mark All Read",
"Notifications_All": "All notifications",
"Notifications_Mark_All_Read": "Mark all read",
"PIALERT_WEB_PASSWORD_description": "The default password is <code>123456</code>. To change the password run <code>/app/back/pialert-cli</code> in the container or use the <a onclick=\"toggleAllSettings()\" href=\"#SETPWD_RUN\"><code>SETPWD_RUN</code> Set password plugin</a>.",
"PIALERT_WEB_PASSWORD_name": "Login password",
"PIALERT_WEB_PROTECTION_description": "When enabled a login dialog is displayed. Read below carefully if you get locked out of your instance.",
@@ -562,17 +563,17 @@
"Presence_Key_OnlineNow_desc": "Device detected in the last scan as online.",
"Presence_Key_OnlinePast": "Past online",
"Presence_Key_OnlinePastMiss": "Past online (miss-match)",
"Presence_Key_OnlinePastMiss_desc": "Device online in the past, but currently offline, but the start session might be missing or has conflicting data. (might be a bug - please submit a PR if you know how to fix it - I'm a bit lost in code here)",
"Presence_Key_OnlinePastMiss_desc": "Device online in the past, but currently offline, but the start session might be missing or has conflicting data.",
"Presence_Key_OnlinePast_desc": "Device online in the past, but currently offline.",
"Presence_Loading": "Loading…",
"Presence_Shortcut_AllDevices": "My Devices",
"Presence_Shortcut_AllDevices": "My devices",
"Presence_Shortcut_Archived": "Archived",
"Presence_Shortcut_Connected": "Connected",
"Presence_Shortcut_Devices": "Devices",
"Presence_Shortcut_DownAlerts": "Down Alerts",
"Presence_Shortcut_Favorites": "Favorites",
"Presence_Shortcut_NewDevices": "New Devices",
"Presence_Title": "Presence by Device",
"Presence_Shortcut_NewDevices": "New devices",
"Presence_Title": "Presence by device",
"REFRESH_FQDN_description": "Rescans all devices and refreshes their Fully Qualified Domain Name (FQDN). If disabled, only devices without a known name are scanned to improve performance. In this case, FQDN is updated only during initial device discovery.",
"REFRESH_FQDN_name": "Refresh FQDN",
"REPORT_DASHBOARD_URL_description": "This URL is used as the base for generating links in HTML reports (e.g.: emails). Enter full URL starting with <code>http://</code> including the port number (no trailing slash <code>/</code>).",
@@ -582,8 +583,8 @@
"REPORT_MAIL_name": "Enable email",
"REPORT_TITLE": "Report",
"RandomMAC_hover": "Autodetected - indicates if the device randomizes it's MAC address. You can exclude specific MACs with the UI_NOT_RANDOM_MAC setting. Click to find out more.",
"Reports_Sent_Log": "Sent Reports Log",
"SCAN_SUBNETS_description": "Most on-network scanners (ARP-SCAN, NMAP, NSLOOKUP, DIG) rely on scanning specific network interfaces and subnets. Check the <a href=\"https://github.com/jokob-sk/NetAlertX/blob/main/docs/SUBNETS.md\" target=\"_blank\">subnets documentation</a> for help on this setting, especially VLANs, what VLANs are supported, or how to figure out the network mask and your interface. <br/> <br/> An alternative to on-network scanners is to enable some other Device scanners/importers that don't rely on NetAlert<sup>X</sup> having access to the network (UNIFI, dhcp.leases, PiHole, etc.). <br/> <br/> Note: The scan time itself depends on the number of IP addresses to check, so set this up carefully with the appropriate network mask and interface.",
"Reports_Sent_Log": "Sent reports log",
"SCAN_SUBNETS_description": "Most on-network scanners (ARP-SCAN, NMAP, NSLOOKUP, DIG) rely on scanning specific network interfaces and subnets. Check the <a href=\"https://github.com/jokob-sk/NetAlertX/blob/main/docs/SUBNETS.md\" target=\"_blank\">subnets documentation</a> for help on this setting, especially VLANs, what VLANs are supported, or how to figure out the network mask and your interface. <br/> <br/> An alternative to on-network scanners is to enable some other device scanners/importers that don't rely on NetAlert<sup>X</sup> having access to the network (UNIFI, dhcp.leases, PiHole, etc.). <br/> <br/> Note: The scan time itself depends on the number of IP addresses to check, so set this up carefully with the appropriate network mask and interface.",
"SCAN_SUBNETS_name": "Networks to scan",
"SYSTEM_TITLE": "System Information",
"Setting_Override": "Override value",
@@ -591,7 +592,7 @@
"Settings_Metadata_Toggle": "Show/hide metadata for the given setting.",
"Settings_Show_Description": "Show setting description.",
"Settings_device_Scanners_desync": "⚠ Device scanner schedules are out-of-sync.",
"Settings_device_Scanners_desync_popup": "Schedules of devices scanners (<code>*_RUN_SCHD</code>) are not the same. This will result into inconsistent device online/offline notifications. Unless this is intended, please use the same schedule for all enabled <b>🔍Device scanners</b>.",
"Settings_device_Scanners_desync_popup": "Schedules of devices scanners (<code>*_RUN_SCHD</code>) are not the same. This will result into inconsistent device online/offline notifications. Unless this is intended, please use the same schedule for all enabled <b>🔍device scanners</b>.",
"Speedtest_Results": "Speedtest Results",
"Systeminfo_CPU": "CPU",
"Systeminfo_CPU_Cores": "CPU Cores:",
@@ -666,18 +667,18 @@
"Systeminfo_System_Uname": "Uname:",
"Systeminfo_System_Uptime": "Uptime:",
"Systeminfo_This_Client": "This Client",
"Systeminfo_USB_Devices": "USB Devices",
"Systeminfo_USB_Devices": "USB devices",
"TICKER_MIGRATE_TO_NETALERTX": "⚠ Old mount locations detected. Follow <a href=\"https://github.com/jokob-sk/NetAlertX/blob/main/docs/MIGRATION.md\" target=\"_blank\">this guide</a> to migrate to the new <code>/app/config</code> and <code>/app/db</code> folders and the <code>netalertx</code> container.",
"TIMEZONE_description": "Time zone to display stats correctly. Find your time zone <a target=\"_blank\" href=\"https://en.wikipedia.org/wiki/List_of_tz_database_time_zones\" rel=\"nofollow\">here</a>.",
"TIMEZONE_name": "Time zone",
"UI_DEV_SECTIONS_description": "Select which UI elements to hide in the Devices pages.",
"UI_DEV_SECTIONS_name": "Hide Devices Sections",
"UI_DEV_SECTIONS_description": "Select which UI elements to hide in the devices pages.",
"UI_DEV_SECTIONS_name": "Hide devices sections",
"UI_ICONS_description": "A list of pre-defined icons. Proceed with caution, the preferred way to add icons is described in the <a href=\"https://github.com/jokob-sk/NetAlertX/blob/main/docs/ICONS.md\" target=\"_blank\">Icons documentation</a>. You can add a base64-encoded SVG HTML or Font-awesome HTML tag.",
"UI_ICONS_name": "Pre-defined icons",
"UI_LANG_description": "Select the preferred UI language. Help translating or suggest languages in the online portal of <a href=\"https://hosted.weblate.org/projects/pialert/core/\" target=\"_blank\">Weblate</a>.",
"UI_LANG_name": "UI Language",
"UI_MY_DEVICES_description": "Devices of which statuses should be shown in the default <b>My Devices</b> view.",
"UI_MY_DEVICES_name": "Show in My Devices view",
"UI_MY_DEVICES_description": "Devices of which statuses should be shown in the default <b>My devices</b> view.",
"UI_MY_DEVICES_name": "Show in My devices view",
"UI_NOT_RANDOM_MAC_description": "Mac prefixes which shouldn't be marked as Random devices. Enter for example <code>52</code> to exclude devices starting with <code>52:xx:xx:xx:xx:xx</code> from being marked as devices with a random MAC address.",
"UI_NOT_RANDOM_MAC_name": "Don't mark as Random",
"UI_PRESENCE_description": "Select what statuses should be shown in the <b>Device presence</b> chart in the <a href=\"/devices.php\" target=\"_blank\">Devices</a> page.",
@@ -718,7 +719,7 @@
"devices_old": "Refreshing…",
"general_event_description": "The event you have triggered might take a while until background processes finish. The execution ended once the below execution queue empties (Check the <a href='/maintenance.php#tab_Logging'>error log</a> if you encounter issues). <br/> <br/> Execution queue:",
"general_event_title": "Executing an ad-hoc event",
"go_to_device_event_tooltip": "Navigate to the Device",
"go_to_device_event_tooltip": "Navigate to the device",
"go_to_node_event_tooltip": "Navigate to the Network page of the given node",
"new_version_available": "A new version is available.",
"report_guid": "Notification guid:",
@@ -731,7 +732,7 @@
"settings_core_label": "Core",
"settings_device_scanners": "Device scanners used to discover devices that write into the CurrentScan database table.",
"settings_device_scanners_icon": "fa-solid fa-magnifying-glass-plus",
"settings_device_scanners_info": "Load even more Device Scanners with the <a href=\"/settings.php#LOADED_PLUGINS\">LOADED_PLUGINS</a> setting",
"settings_device_scanners_info": "Load more device scanners with the <a href=\"/settings.php#LOADED_PLUGINS\">LOADED_PLUGINS</a> setting",
"settings_device_scanners_label": "Device scanners",
"settings_enabled": "Enabled settings",
"settings_enabled_icon": "fa-solid fa-toggle-on",

1
front/php/templates/language/es_es.json Executable file → Normal file
View File

@@ -529,6 +529,7 @@
"Network_Cant_Assign_No_Node_Selected": "",
"Network_Configuration_Error": "Error en la configuración",
"Network_Connected": "Dispositivos conectados",
"Network_Devices": "",
"Network_ManageAdd": "Añadir dispositivo",
"Network_ManageAdd_Name": "Nombre del dispositivo",
"Network_ManageAdd_Name_text": "Nombre sin caracteres especiales",

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

@@ -9,7 +9,7 @@
"About_Exit": "Se déconnecter",
"About_Title": "Analyse de la sécurité du réseau et cadre de notification",
"AppEvents_AppEventProcessed": "Traité(s)",
"AppEvents_DateTimeCreated": "Découvert le",
"AppEvents_DateTimeCreated": "Identifié",
"AppEvents_Extra": "Extra",
"AppEvents_GUID": "GUID dévénements de l'application",
"AppEvents_Helper1": "Assistant 1",
@@ -494,6 +494,7 @@
"Network_Cant_Assign_No_Node_Selected": "Impossible d'assigner, aucun noeud parent sélectionné.",
"Network_Configuration_Error": "Erreur de configuration",
"Network_Connected": "Appareils connectés",
"Network_Devices": "",
"Network_ManageAdd": "Ajouter un appareil",
"Network_ManageAdd_Name": "Nom de l'appareil",
"Network_ManageAdd_Name_text": "Nom sans caractère spécial",

1
front/php/templates/language/it_it.json Executable file → Normal file
View File

@@ -494,6 +494,7 @@
"Network_Cant_Assign_No_Node_Selected": "Impossibile assegnare, nessun nodo padre selezionato.",
"Network_Configuration_Error": "Errore di configurazione",
"Network_Connected": "Dispositivi connessi",
"Network_Devices": "",
"Network_ManageAdd": "Aggiungi dispositivo",
"Network_ManageAdd_Name": "Nome dispositivo",
"Network_ManageAdd_Name_text": "Nome senza caratteri speciali",

1
front/php/templates/language/nb_no.json Executable file → Normal file
View File

@@ -494,6 +494,7 @@
"Network_Cant_Assign_No_Node_Selected": "",
"Network_Configuration_Error": "Konfigurasjonsfeil",
"Network_Connected": "Tilkoblede enheter",
"Network_Devices": "",
"Network_ManageAdd": "Legg til enhet",
"Network_ManageAdd_Name": "Enhetsnavn",
"Network_ManageAdd_Name_text": "Navn uten spesialtegn",

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

@@ -494,6 +494,7 @@
"Network_Cant_Assign_No_Node_Selected": "",
"Network_Configuration_Error": "Błąd konfiguracji",
"Network_Connected": "Połączone urządzenia",
"Network_Devices": "",
"Network_ManageAdd": "Dodaj urządzenie",
"Network_ManageAdd_Name": "Nazwa urządzenia",
"Network_ManageAdd_Name_text": "Nazwa bez znaków specjalnych",

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

@@ -494,6 +494,7 @@
"Network_Cant_Assign_No_Node_Selected": "",
"Network_Configuration_Error": "",
"Network_Connected": "",
"Network_Devices": "",
"Network_ManageAdd": "",
"Network_ManageAdd_Name": "",
"Network_ManageAdd_Name_text": "",

1
front/php/templates/language/ru_ru.json Executable file → Normal file
View File

@@ -494,6 +494,7 @@
"Network_Cant_Assign_No_Node_Selected": "",
"Network_Configuration_Error": "Ошибка конфигурации",
"Network_Connected": "Подключенные устройства",
"Network_Devices": "",
"Network_ManageAdd": "Добавить устройство",
"Network_ManageAdd_Name": "Имя устройства",
"Network_ManageAdd_Name_text": "Имя без специальных символов",

1
front/php/templates/language/tr_tr.json Executable file → Normal file
View File

@@ -494,6 +494,7 @@
"Network_Cant_Assign_No_Node_Selected": "",
"Network_Configuration_Error": "Kurulum Hatası",
"Network_Connected": "Bağlanmış cihazlar",
"Network_Devices": "",
"Network_ManageAdd": "Cihaz Ekle",
"Network_ManageAdd_Name": "Cihaz İsmi",
"Network_ManageAdd_Name_text": "Özel karakterler olmadan isim veriniz",

1
front/php/templates/language/uk_ua.json Executable file → Normal file
View File

@@ -494,6 +494,7 @@
"Network_Cant_Assign_No_Node_Selected": "Неможливо призначити, не вибрано батьківський вузол.",
"Network_Configuration_Error": "Помилка конфігурації",
"Network_Connected": "Підключені пристрої",
"Network_Devices": "",
"Network_ManageAdd": "Додати пристрій",
"Network_ManageAdd_Name": "Назва пристрою",
"Network_ManageAdd_Name_text": "Назва без спеціальних символів",

1
front/php/templates/language/zh_cn.json Executable file → Normal file
View File

@@ -494,6 +494,7 @@
"Network_Cant_Assign_No_Node_Selected": "无法分配,未选择父节点。",
"Network_Configuration_Error": "配置错误",
"Network_Connected": "联网设备",
"Network_Devices": "",
"Network_ManageAdd": "添加设备",
"Network_ManageAdd_Name": "设备名称",
"Network_ManageAdd_Name_text": "名称不包含特殊字符",

View File

@@ -16,6 +16,10 @@
require 'php/templates/header.php';
?>
<script>
showSpinner();
</script>
<!-- Page ------------------------------------------------------------------ -->
<div class="content-wrapper">
@@ -67,7 +71,7 @@
<div class="inner"> <h3 id="devicesNew"> -- </h3>
<p class="infobox_label"><?= lang('Presence_Shortcut_NewDevices');?></p>
</div>
<div class="icon"> <i class="ion ion-plus-round text-yellow-40"></i> </div>
<div class="icon"> <i class="fa-solid fa-circle-plus text-yellow-40"></i> </div>
</div>
</a>
</div>

View File

@@ -5,6 +5,10 @@
?>
<script>
showSpinner();
</script>
<!-- Page ------------------------------------------------------------------ -->
<div class="content-wrapper">
@@ -119,6 +123,9 @@
})
.catch(error => {
console.error('Error:', error);
})
.finally(() => {
hideSpinner(); // always called, even if error occurred
});
}

View File

@@ -17,6 +17,12 @@
<!-- ----------------------------------------------------------------------- -->
<script>
// show spinning icon
showSpinner()
</script>
<!-- Page ------------------------------------------------------------------ -->
<div class="content-wrapper">
@@ -574,26 +580,19 @@ echo '<br>';
<!-- ----------------------------------------------------------------------- -->
<!-- DataTable initialization -->
<script>
// show spinning icon
showSpinner()
setTimeout(() => {
$('#networkTable').DataTable({
"searching": true,
"order": [[0, "desc"]]
});
// hide spinning icon
hideSpinner()
$('#networkTable').DataTable({
searching: true,
order: [[0, "desc"]],
initComplete: function(settings, json) {
hideSpinner(); // Called after the DataTable is fully initialized
}
});
}, 500);
}, 200);
</script>

View File

@@ -9,6 +9,9 @@ require 'php/templates/header.php';
<!-- ----------------------------------------------------------------------- -->
<script>
showSpinner();
</script>
<div id="notifications" class="content-wrapper">
<section class="content">
@@ -160,7 +163,10 @@ require 'php/templates/header.php';
],
"order": [[0, "desc"]]
});
,
initComplete: function(settings, json) {
hideSpinner(); // Called after the DataTable is fully initialized
}});
fetchData(function(data) {
table.clear().rows.add(data).draw();

View File

@@ -4,6 +4,10 @@
require_once $_SERVER['DOCUMENT_ROOT'] . '/php/templates/security.php';
?>
<script>
showSpinner();
</script>
<section class="content workflows col-sm-12 col-xs-12">
<div id="workflowContainerWrap" class="bg-grey-dark color-palette col-sm-12 col-xs-12 box-default box-info ">
@@ -83,8 +87,6 @@ let emptyWorkflow = {
// Retrieve and process the data
function getData() {
showSpinner();
getSetting()
$.get('php/server/query_json.php?file=workflows.json')

View File

@@ -135,14 +135,17 @@ class Query(ObjectType):
status = options.status
mylog('verbose', f'[graphql_schema] Applying status filter: {status}')
# Include devices matching criteria in UI_MY_DEVICES
allowed_statuses = get_setting_value("UI_MY_DEVICES")
hidden_relationships = get_setting_value("UI_hide_rel_types")
network_dev_types = get_setting_value("NETWORK_DEVICE_TYPES")
mylog('verbose', f'[graphql_schema] allowed_statuses: {allowed_statuses}')
mylog('verbose', f'[graphql_schema] hidden_relationships: {hidden_relationships}')
mylog('verbose', f'[graphql_schema] network_dev_types: {network_dev_types}')
# Filtering based on the "status"
if status == "my_devices":
# Include devices matching criteria in UI_MY_DEVICES
allowed_statuses = get_setting_value("UI_MY_DEVICES")
hidden_relationships = get_setting_value("UI_hide_rel_types") # 🆕
mylog('verbose', f'[graphql_schema] allowed_statuses: {allowed_statuses}')
mylog('verbose', f'[graphql_schema] hidden_relationships: {hidden_relationships}')
devices_data = [
device for device in devices_data
@@ -174,7 +177,9 @@ class Query(ObjectType):
devices_data = [device for device in devices_data if device["devIsArchived"] == 1]
elif status == "offline":
devices_data = [device for device in devices_data if device["devPresentLastScan"] == 0]
elif status == "all_nodes":
elif status == "network_devices":
devices_data = [device for device in devices_data if device["devType"] in network_dev_types]
elif status == "all_devices":
devices_data = devices_data # keep all
# additional filters