Merge branch 'pr/35' into leiweibau-merge2

This commit is contained in:
jokob-sk
2022-07-23 20:56:33 +10:00
14 changed files with 315 additions and 106 deletions

View File

@@ -1230,21 +1230,21 @@ def email_reporting ():
mail_text = mail_text.replace ('<SERVER_NAME>', socket.gethostname() ) mail_text = mail_text.replace ('<SERVER_NAME>', socket.gethostname() )
mail_html = mail_html.replace ('<SERVER_NAME>', socket.gethostname() ) mail_html = mail_html.replace ('<SERVER_NAME>', socket.gethostname() )
mail_text = mail_text.replace ('<PIALERT_VERSION>', VERSION ) # mail_text = mail_text.replace ('<PIALERT_VERSION>', VERSION )
mail_html = mail_html.replace ('<PIALERT_VERSION>', VERSION ) # mail_html = mail_html.replace ('<PIALERT_VERSION>', VERSION )
mail_text = mail_text.replace ('<PIALERT_VERSION_DATE>', VERSION_DATE ) # mail_text = mail_text.replace ('<PIALERT_VERSION_DATE>', VERSION_DATE )
mail_html = mail_html.replace ('<PIALERT_VERSION_DATE>', VERSION_DATE ) # mail_html = mail_html.replace ('<PIALERT_VERSION_DATE>', VERSION_DATE )
mail_text = mail_text.replace ('<PIALERT_YEAR>', VERSION_YEAR ) # mail_text = mail_text.replace ('<PIALERT_YEAR>', VERSION_YEAR )
mail_html = mail_html.replace ('<PIALERT_YEAR>', VERSION_YEAR ) # mail_html = mail_html.replace ('<PIALERT_YEAR>', VERSION_YEAR )
# Compose Internet Section # Compose Internet Section
print (' Formating report...') print (' Formating report...')
mail_section_Internet = False mail_section_Internet = False
mail_text_Internet = '' mail_text_Internet = ''
mail_html_Internet = '' mail_html_Internet = ''
text_line_template = '{}\t{}\n{}\t{}\n{}\t{}\n{}\t{}\n\n' text_line_template = '{} \t{}\t{}\t{}\n'
html_line_template = '<tr>\n'+ \ html_line_template = '<tr>\n'+ \
' <td> <a href="{}{}"> {} </a> </td>\n <td> {} </td>\n'+ \ ' <td> <a href="{}{}"> {} </a> </td>\n <td> {} </td>\n'+ \
' <td style="font-size: 24px; color:#D02020"> {} </td>\n'+ \ ' <td style="font-size: 24px; color:#D02020"> {} </td>\n'+ \
@@ -1286,8 +1286,8 @@ def email_reporting ():
for eventAlert in sql : for eventAlert in sql :
mail_section_new_devices = True mail_section_new_devices = True
mail_text_new_devices += text_line_template.format ( mail_text_new_devices += text_line_template.format (
'Name:', eventAlert['dev_Name'], 'MAC:', eventAlert['eve_MAC'], 'IP:', eventAlert['eve_IP'], 'Name: ', eventAlert['dev_Name'], 'MAC: ', eventAlert['eve_MAC'], 'IP: ', eventAlert['eve_IP'],
'Time:', eventAlert['eve_DateTime'], 'More Info:', eventAlert['eve_AdditionalInfo']) 'Time: ', eventAlert['eve_DateTime'], 'More Info: ', eventAlert['eve_AdditionalInfo'])
mail_html_new_devices += html_line_template.format ( mail_html_new_devices += html_line_template.format (
REPORT_DEVICE_URL, eventAlert['eve_MAC'], eventAlert['eve_MAC'], REPORT_DEVICE_URL, eventAlert['eve_MAC'], eventAlert['eve_MAC'],
eventAlert['eve_DateTime'], eventAlert['eve_IP'], eventAlert['eve_DateTime'], eventAlert['eve_IP'],
@@ -1313,8 +1313,8 @@ def email_reporting ():
for eventAlert in sql : for eventAlert in sql :
mail_section_devices_down = True mail_section_devices_down = True
mail_text_devices_down += text_line_template.format ( mail_text_devices_down += text_line_template.format (
'Name:', eventAlert['dev_Name'], 'MAC:', eventAlert['eve_MAC'], 'Name: ', eventAlert['dev_Name'], 'MAC: ', eventAlert['eve_MAC'],
'Time:', eventAlert['eve_DateTime'],'IP:', eventAlert['eve_IP']) 'Time: ', eventAlert['eve_DateTime'],'IP: ', eventAlert['eve_IP'])
mail_html_devices_down += html_line_template.format ( mail_html_devices_down += html_line_template.format (
REPORT_DEVICE_URL, eventAlert['eve_MAC'], eventAlert['eve_MAC'], REPORT_DEVICE_URL, eventAlert['eve_MAC'], eventAlert['eve_MAC'],
eventAlert['eve_DateTime'], eventAlert['eve_IP'], eventAlert['eve_DateTime'], eventAlert['eve_IP'],
@@ -1342,9 +1342,9 @@ def email_reporting ():
for eventAlert in sql : for eventAlert in sql :
mail_section_events = True mail_section_events = True
mail_text_events += text_line_template.format ( mail_text_events += text_line_template.format (
'Name:', eventAlert['dev_Name'],'Event:', eventAlert['eve_EventType'], 'Name: ', eventAlert['dev_Name'], 'MAC: ', eventAlert['eve_MAC'],
'MAC:', eventAlert['eve_MAC'], 'IP:', eventAlert['eve_IP'], 'IP: ', eventAlert['eve_IP'],'Time: ', eventAlert['eve_DateTime'],
'Time:', eventAlert['eve_DateTime'],'More Info:', eventAlert['eve_AdditionalInfo']) 'Event: ', eventAlert['eve_EventType'],'More Info: ', eventAlert['eve_AdditionalInfo'])
mail_html_events += html_line_template.format ( mail_html_events += html_line_template.format (
REPORT_DEVICE_URL, eventAlert['eve_MAC'], eventAlert['eve_MAC'], REPORT_DEVICE_URL, eventAlert['eve_MAC'], eventAlert['eve_MAC'],
eventAlert['eve_DateTime'], eventAlert['eve_IP'], eventAlert['eve_DateTime'], eventAlert['eve_IP'],
@@ -1372,10 +1372,16 @@ def email_reporting ():
send_ntfy (mail_text) send_ntfy (mail_text)
else : else :
print (' Skip NTFY...') print (' Skip NTFY...')
if REPORT_PUSHSAFER :
print (' Sending report by PUSHSAFER...')
send_pushsafer (mail_text)
else :
print (' Skip PUSHSAFER...')
else : else :
print (' No changes to report...') print (' No changes to report...')
# Clean Pending Alert Events # Clean Pending Alert Events
sql.execute ("""UPDATE Devices SET dev_LastNotification = ? sql.execute ("""UPDATE Devices SET dev_LastNotification = ?
WHERE dev_MAC IN (SELECT eve_MAC FROM Events WHERE dev_MAC IN (SELECT eve_MAC FROM Events
@@ -1400,6 +1406,26 @@ def send_ntfy (_Text):
"Priority": "urgent", "Priority": "urgent",
"Tags": "warning" "Tags": "warning"
}) })
def send_pushsafer (_Text):
url = 'https://www.pushsafer.com/api'
post_fields = {
"t" : 'Pi.Alert Message',
"m" : _Text,
"s" : 11,
"v" : 3,
"i" : 148,
"c" : '#ef7f7f',
"d" : 'a',
"u" : REPORT_DASHBOARD_URL,
"ut" : 'Open Pi.Alert',
"k" : PUSHSAFER_TOKEN,
}
request = Request(url, urlencode(post_fields).encode())
json = urlopen(request).read().decode()
# print(json)
#------------------------------------------------------------------------------- #-------------------------------------------------------------------------------
def format_report_section (pActive, pSection, pTable, pText, pHTML): def format_report_section (pActive, pSection, pTable, pText, pHTML):
global mail_text global mail_text
@@ -1470,12 +1496,22 @@ def send_email (pText, pHTML):
# Send mail # Send mail
smtp_connection = smtplib.SMTP (SMTP_SERVER, SMTP_PORT) smtp_connection = smtplib.SMTP (SMTP_SERVER, SMTP_PORT)
smtp_connection.ehlo() smtp_connection.ehlo()
# smtp_connection.starttls()
# smtp_connection.ehlo()
# smtp_connection.login (SMTP_USER, SMTP_PASS)
if not SafeParseGlobalBool("SMTP_SKIP_TLS"):
smtp_connection.starttls() smtp_connection.starttls()
smtp_connection.ehlo() smtp_connection.ehlo()
if not SafeParseGlobalBool("SMTP_SKIP_LOGIN"):
smtp_connection.login (SMTP_USER, SMTP_PASS) smtp_connection.login (SMTP_USER, SMTP_PASS)
smtp_connection.sendmail (REPORT_FROM, REPORT_TO, msg.as_string()) smtp_connection.sendmail (REPORT_FROM, REPORT_TO, msg.as_string())
smtp_connection.quit() smtp_connection.quit()
#-------------------------------------------------------------------------------
def SafeParseGlobalBool(boolVariable):
if boolVariable in globals():
return eval(boolVariable)
return False
#=============================================================================== #===============================================================================
# DB # DB

View File

@@ -4,18 +4,18 @@ Server: <SERVER_NAME>
<SECTION_INTERNET> <SECTION_INTERNET>
Internet Internet
--------------------- ----------------------
<TABLE_INTERNET> <TABLE_INTERNET>
</SECTION_INTERNET><SECTION_NEW_DEVICES> </SECTION_INTERNET><SECTION_NEW_DEVICES>
New Devices New Devices
--------------------- ----------------------
<TABLE_NEW_DEVICES> <TABLE_NEW_DEVICES>
</SECTION_NEW_DEVICES><SECTION_DEVICES_DOWN> </SECTION_NEW_DEVICES><SECTION_DEVICES_DOWN>
Devices Down Devices Down
--------------------- ----------------------
<TABLE_DEVICES_DOWN> <TABLE_DEVICES_DOWN>
</SECTION_DEVICES_DOWN><SECTION_EVENTS> </SECTION_DEVICES_DOWN><SECTION_EVENTS>
Events Events
--------------------- ----------------------
<TABLE_EVENTS> <TABLE_EVENTS>
</SECTION_EVENTS> </SECTION_EVENTS>

View File

@@ -12,11 +12,14 @@ DB_PATH = PIALERT_PATH + '/db/pialert.db'
LOG_PATH = PIALERT_PATH + '/log' LOG_PATH = PIALERT_PATH + '/log'
VENDORS_DB = '/usr/share/arp-scan/ieee-oui.txt' VENDORS_DB = '/usr/share/arp-scan/ieee-oui.txt'
PRINT_LOG = False PRINT_LOG = False
PIALERT_WEB_PASSWORD = '8d969eef6ecad3c29a3a629280e686cf0c3f5d5a86aff3ca12020c923adc6c92'
SMTP_SERVER = 'smtp.gmail.com' SMTP_SERVER = 'smtp.gmail.com'
SMTP_PORT = 587 SMTP_PORT = 587
SMTP_USER = 'user@gmail.com' SMTP_USER = 'user@gmail.com'
SMTP_PASS = 'password' SMTP_PASS = 'password'
SMTP_SKIP_TLS = False
SMTP_SKIP_LOGIN = False
REPORT_MAIL = False REPORT_MAIL = False
REPORT_FROM = 'Pi.Alert <' + SMTP_USER +'>' REPORT_FROM = 'Pi.Alert <' + SMTP_USER +'>'

7
config/reset_password.sh Normal file
View File

@@ -0,0 +1,7 @@
cp pialert.conf pialert.conf.bak
PIA_PASS=$1
echo "The password '$1' is hashed"
PIA_PASS_HASH=$(echo -n $PIA_PASS | sha256sum | awk '{print $1}')
echo "The hashed password is: $PIA_PASS_HASH"
sed -i "/PIALERT_WEB_PASSWORD/c\PIALERT_WEB_PASSWORD = '$PIA_PASS_HASH'" pialert.conf
echo "The hash was saved in the configuration file"

View File

@@ -8,6 +8,14 @@
#--------------------------------------------------------------------------- --> #--------------------------------------------------------------------------- -->
<?php <?php
session_start();
if ($_SESSION["login"] != 1)
{
header('Location: /pialert/index.php');
exit;
}
require 'php/templates/header.php'; require 'php/templates/header.php';
?> ?>

View File

@@ -8,6 +8,14 @@
#--------------------------------------------------------------------------- --> #--------------------------------------------------------------------------- -->
<?php <?php
session_start();
if ($_SESSION["login"] != 1)
{
header('Location: /pialert/index.php');
exit;
}
require 'php/templates/header.php'; require 'php/templates/header.php';
require 'php/templates/graph.php'; require 'php/templates/graph.php';
?> ?>

View File

@@ -8,6 +8,14 @@
#--------------------------------------------------------------------------- --> #--------------------------------------------------------------------------- -->
<?php <?php
session_start();
if ($_SESSION["login"] != 1)
{
header('Location: /pialert/index.php');
exit;
}
require 'php/templates/header.php'; require 'php/templates/header.php';
?> ?>

View File

@@ -1,5 +1,136 @@
<?php <?php
header('Location: /pialert/devices.php', TRUE, 302); session_start();
// or die();
exit(); if ($_REQUEST['action'] == 'logout') {
session_destroy();
header('Location: /pialert/index.php');
// session_start();
// $_SESSION["login"] = 236789046202545614837645948;
}
$config_file = "../config/pialert.conf";
$config_file_lines = file($config_file);
$config_file_lines = array_values(preg_grep('/^PIALERT_WEB_PASSWORD\s.*/', $config_file_lines));
//print_r($password_line);
$password_line = explode("'", $config_file_lines[0]);
$Pia_Password = $password_line[1];
//echo $Pia_Password;
if ($Pia_Password == hash('sha256',$_POST["loginpassword"]))
{
header('Location: /pialert/devices.php');
# Userdaten korrekt - User ist eingeloggt
# Login merken !
$_SESSION["login"] = 1;
}
if ($_SESSION["login"] == 1)
{
header('Location: /pialert/devices.php');
}
if ($_SESSION["login"] != 1)
{
if ($Pia_Password == '8d969eef6ecad3c29a3a629280e686cf0c3f5d5a86aff3ca12020c923adc6c92') {$login_info = 'Defaultpassword "123456" is still active';}
?>
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta http-equiv="Cache-Control" content="no-cache, no-store, must-revalidate" />
<meta http-equiv="Pragma" content="no-cache" />
<meta http-equiv="Expires" content="0" />
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<title>Pi-Alert | Log in</title>
<!-- Tell the browser to be responsive to screen width -->
<meta content="width=device-width, initial-scale=1, maximum-scale=1, user-scalable=no" name="viewport">
<!-- Bootstrap 3.3.7 -->
<link rel="stylesheet" href="lib/AdminLTE/bower_components/bootstrap/dist/css/bootstrap.min.css">
<!-- Font Awesome -->
<link rel="stylesheet" href="lib/AdminLTE/bower_components/font-awesome/css/font-awesome.min.css">
<!-- Ionicons -->
<link rel="stylesheet" href="lib/AdminLTE/bower_components/Ionicons/css/ionicons.min.css">
<!-- Theme style -->
<link rel="stylesheet" href="lib/AdminLTE/dist/css/AdminLTE.min.css">
<!-- iCheck -->
<link rel="stylesheet" href="lib/AdminLTE/plugins/iCheck/square/blue.css">
<!-- HTML5 Shim and Respond.js IE8 support of HTML5 elements and media queries -->
<!-- WARNING: Respond.js doesn't work if you view the page via file:// -->
<!--[if lt IE 9]>
<script src="https://oss.maxcdn.com/html5shiv/3.7.3/html5shiv.min.js"></script>
<script src="https://oss.maxcdn.com/respond/1.4.2/respond.min.js"></script>
<![endif]-->
<link rel="stylesheet" href="/front/css/offline-font.css">
</head>
<body class="hold-transition login-page">
<div class="login-box">
<div class="login-logo">
<a href="/pialert/index2.php"><b>Pi.</b>Alert</a>
</div>
<!-- /.login-logo -->
<div class="login-box-body">
<p class="login-box-msg">Sign in to start your session</p>
<form action="/pialert/index.php" method="post">
<div class="form-group has-feedback">
<input type="password" class="form-control" placeholder="Password" name="loginpassword">
<span class="glyphicon glyphicon-lock form-control-feedback"></span>
</div>
<div class="row">
<div class="col-xs-8">
<div class="checkbox icheck">
<label>
<input type="checkbox" disabled> Remember Me
</label>
</div>
</div>
<!-- /.col -->
<div class="col-xs-4">
<button type="submit" class="btn btn-primary btn-block btn-flat">Sign In</button>
</div>
<!-- /.col -->
</div>
</form>
</div>
<!-- /.login-box-body -->
<div class="box-body" style="margin-top: 50px;">
<div class="callout callout-danger">
<h4>Password Alert!</h4>
<p><?php echo $login_info;?></p>
<p>To set a new password run:<br><span style="border: solid 1px yellow; padding: 2px;">./reset_password.sh yournewpassword</span><br>in the config folder.</p>
</div>
</div>
</div>
<!-- /.login-box -->
<!-- jQuery 3 -->
<script src="lib/AdminLTE/bower_components/jquery/dist/jquery.min.js"></script>
<!-- Bootstrap 3.3.7 -->
<script src="lib/AdminLTE/bower_components/bootstrap/dist/js/bootstrap.min.js"></script>
<!-- iCheck -->
<script src="lib/AdminLTE/plugins/iCheck/icheck.min.js"></script>
<script>
$(function () {
$('input').iCheck({
checkboxClass: 'icheckbox_square-blue',
radioClass: 'iradio_square-blue',
increaseArea: '20%' /* optional */
});
});
</script>
</body>
</html>
<?php
}
?> ?>

View File

@@ -1,4 +1,12 @@
<?php <?php
session_start();
if ($_SESSION["login"] != 1)
{
header('Location: /pialert/index.php');
exit;
}
//------------------------------------------------------------------------------ //------------------------------------------------------------------------------
// Pi.Alert // Pi.Alert
// Open Source Network Guard / WIFI & LAN intrusion detector // Open Source Network Guard / WIFI & LAN intrusion detector
@@ -209,9 +217,9 @@ if (submit && isset($_POST['langselector_set'])) {
<div class="nav-tabs-custom"> <div class="nav-tabs-custom">
<ul class="nav nav-tabs"> <ul class="nav nav-tabs">
<li class="active"><a href="#tab_Settings" data-toggle="tab">Settings</a></li> <li class="active"><a href="#tab_Settings" data-toggle="tab"><?php echo $pia_lang['Maintenance_Tools_Tab_Settings'];?></a></li>
<li><a href="#tab_DBTools" data-toggle="tab">DB Tools</a></li> <li><a href="#tab_DBTools" data-toggle="tab"><?php echo $pia_lang['Maintenance_Tools_Tab_Tools'];?></a></li>
<li><a href="#tab_BackupRestore" data-toggle="tab">Backup / Restore</a></li> <li><a href="#tab_BackupRestore" data-toggle="tab"><?php echo $pia_lang['Maintenance_Tools_Tab_BackupRestore'];?></a></li>
</ul> </ul>
<div class="tab-content"> <div class="tab-content">
<div class="tab-pane active" id="tab_Settings"> <div class="tab-pane active" id="tab_Settings">

View File

@@ -152,9 +152,9 @@ function show_pia_servertime() {
</a> </a>
<ul class="dropdown-menu"> <ul class="dropdown-menu">
<!-- The user image in the menu --> <!-- The user image in the menu -->
<li class="user-header"> <li class="user-header" style=" height: 100px;">
<img src="img/pialertLogoWhite.png" class="img-circle" alt="Pi.Alert Logo" style="border-color:transparent"> <img src="img/pialertLogoWhite.png" class="img-circle" alt="Pi.Alert Logo" style="border-color:transparent; height: 50px; width: 50px; margin-top:15px;">
<p> <p style="float: right; width: 200px">
Open Source Network Guard Open Source Network Guard
<small>Designed for Raspberry Pi</small> <small>Designed for Raspberry Pi</small>
</p> </p>
@@ -162,27 +162,11 @@ function show_pia_servertime() {
<!-- Menu Body --> <!-- Menu Body -->
<li class="user-footer">
<li class="user-body"> <div class="pull-right">
<div class="row"> <a href="/pialert/index.php?action=logout" class="btn btn-danger">Sign out</a>
<div class="col-xs-4 text-center">
<a target="_blank" href="https://github.com/pucherot/Pi.Alert">GitHub Pi.Alert</a>
</div> </div>
<div class="col-xs-4 text-center">
<a href="mailto:pi.alert.application@gmail.com">email Support</a>
</div>
<div class="col-xs-4 text-center">
<a target="_blank" href="https://github.com/pucherot/Pi.Alert/blob/main/LICENSE.txt">GNU GPLv3</a>
</div>
<!--
<div class="col-xs-4 text-center">
<a href="#">Updates</a>
</div>
-->
</div>
<!-- /.row -->
</li> </li>
</ul> </ul>
</li> </li>
</ul> </ul>

View File

@@ -178,6 +178,9 @@ $pia_lang['Maintenance_lang_de_de'] = 'Deutsch (DE)';
$pia_lang['Maintenance_lang_es_es'] = 'Spanisch (ES)'; $pia_lang['Maintenance_lang_es_es'] = 'Spanisch (ES)';
$pia_lang['Maintenance_lang_selector_text'] = 'Die Änderung findet serverseitig statt, betrifft also alle verwendeten Geräte.'; $pia_lang['Maintenance_lang_selector_text'] = 'Die Änderung findet serverseitig statt, betrifft also alle verwendeten Geräte.';
$pia_lang['Maintenance_lang_selector_apply'] = 'Übernehmen'; $pia_lang['Maintenance_lang_selector_apply'] = 'Übernehmen';
$pia_lang['Maintenance_Tools_Tab_Settings'] = 'Einstellungen';
$pia_lang['Maintenance_Tools_Tab_Tools'] = 'Werkzeuge';
$pia_lang['Maintenance_Tools_Tab_BackupRestore'] = 'Sicherg. / Wiederherstellg.';
$pia_lang['Maintenance_Tool_darkmode'] = 'Darstellungswechsel (Dunkel/Hell)'; $pia_lang['Maintenance_Tool_darkmode'] = 'Darstellungswechsel (Dunkel/Hell)';
$pia_lang['Maintenance_Tool_darkmode_text'] = 'Wechselt zwischen der hellen und der dunklen Darstellung. Wenn der Wechsel nicht richtig funktionieren sollte, versuchen Sie den Browsercache zu löschen. Die Änderung findet serverseitig statt, betrifft also alle verwendeten Geräte.'; $pia_lang['Maintenance_Tool_darkmode_text'] = 'Wechselt zwischen der hellen und der dunklen Darstellung. Wenn der Wechsel nicht richtig funktionieren sollte, versuchen Sie den Browsercache zu löschen. Die Änderung findet serverseitig statt, betrifft also alle verwendeten Geräte.';
$pia_lang['Maintenance_Tool_darkmode_noti'] = 'Darstellungswechsel'; $pia_lang['Maintenance_Tool_darkmode_noti'] = 'Darstellungswechsel';

View File

@@ -178,6 +178,9 @@ $pia_lang['Maintenance_lang_de_de'] = 'German (DE)';
$pia_lang['Maintenance_lang_es_es'] = 'Spanish (ES)'; $pia_lang['Maintenance_lang_es_es'] = 'Spanish (ES)';
$pia_lang['Maintenance_lang_selector_text'] = 'The change takes place on the server side, so it affects all devices in use.'; $pia_lang['Maintenance_lang_selector_text'] = 'The change takes place on the server side, so it affects all devices in use.';
$pia_lang['Maintenance_lang_selector_apply'] = 'Apply'; $pia_lang['Maintenance_lang_selector_apply'] = 'Apply';
$pia_lang['Maintenance_Tools_Tab_Settings'] = 'Settings';
$pia_lang['Maintenance_Tools_Tab_Tools'] = 'Tools';
$pia_lang['Maintenance_Tools_Tab_BackupRestore'] = 'Backup / Restore';
$pia_lang['Maintenance_Tool_darkmode'] = 'Toggle Modes (Dark/Light)'; $pia_lang['Maintenance_Tool_darkmode'] = 'Toggle Modes (Dark/Light)';
$pia_lang['Maintenance_Tool_darkmode_text'] = 'Toggle between dark mode and light mode. If the switch does not work properly, try to clear the browser cache. The change takes place on the server side, so it affects all devices in use.'; $pia_lang['Maintenance_Tool_darkmode_text'] = 'Toggle between dark mode and light mode. If the switch does not work properly, try to clear the browser cache. The change takes place on the server side, so it affects all devices in use.';
$pia_lang['Maintenance_Tool_darkmode_noti'] = 'Toggle Modes'; $pia_lang['Maintenance_Tool_darkmode_noti'] = 'Toggle Modes';

View File

@@ -1,19 +1,19 @@
<?php <?php
////////////////////////////////////////////////////////////////// //////////////////////////////////////////////////////////////////
// Device Page - by @TeroRERO 20jul2022 // Device Page - by @TeroRERO 23jul2022
////////////////////////////////////////////////////////////////// //////////////////////////////////////////////////////////////////
$pia_lang['Navigation_Devices'] = 'Dispositivos'; $pia_lang['Navigation_Devices'] = 'Dispositivos';
$pia_lang['Navigation_Presence'] = 'Presencia'; $pia_lang['Navigation_Presence'] = 'Historial';
$pia_lang['Navigation_Events'] = 'Eventos'; $pia_lang['Navigation_Events'] = 'Eventos';
$pia_lang['Navigation_Maintenance'] = 'Mantenimiento'; $pia_lang['Navigation_Maintenance'] = 'Mantenimiento';
$pia_lang['Device_Title'] = 'Dispositivos'; $pia_lang['Device_Title'] = 'Dispositivos';
$pia_lang['Device_Shortcut_AllDevices'] = 'Todos los dispositivos'; $pia_lang['Device_Shortcut_AllDevices'] = 'Todos';
$pia_lang['Device_Shortcut_Connected'] = 'Conectada'; $pia_lang['Device_Shortcut_Connected'] = 'Conectado(s)';
$pia_lang['Device_Shortcut_Favorites'] = 'Favoritos'; $pia_lang['Device_Shortcut_Favorites'] = 'Favorito(s)';
$pia_lang['Device_Shortcut_NewDevices'] = 'Nuevos dispositivos'; $pia_lang['Device_Shortcut_NewDevices'] = 'Nuevo(s)';
$pia_lang['Device_Shortcut_DownAlerts'] = 'Alertas de caídas'; $pia_lang['Device_Shortcut_DownAlerts'] = 'Alerta(s) de caída(s)';
$pia_lang['Device_Shortcut_Archived'] = 'Archivada'; $pia_lang['Device_Shortcut_Archived'] = 'Archivado(s)';
$pia_lang['Device_Shortcut_Devices'] = 'Dispositivos'; $pia_lang['Device_Shortcut_Devices'] = 'Dispositivos';
$pia_lang['Device_Shortcut_OnlineChart'] = 'Presencia del dispositivo a lo largo del tiempo'; $pia_lang['Device_Shortcut_OnlineChart'] = 'Presencia del dispositivo a lo largo del tiempo';
$pia_lang['Device_TableHead_Name'] = 'Nombre'; $pia_lang['Device_TableHead_Name'] = 'Nombre';
@@ -21,7 +21,7 @@ $pia_lang['Device_TableHead_Owner'] = 'Propietario';
$pia_lang['Device_TableHead_Type'] = 'Tipo'; $pia_lang['Device_TableHead_Type'] = 'Tipo';
$pia_lang['Device_TableHead_Favorite'] = 'Favorito'; $pia_lang['Device_TableHead_Favorite'] = 'Favorito';
$pia_lang['Device_TableHead_Group'] = 'Grupo'; $pia_lang['Device_TableHead_Group'] = 'Grupo';
$pia_lang['Device_TableHead_FirstSession'] = 'Primera sesión'; $pia_lang['Device_TableHead_FirstSession'] = '1ra. sesión';
$pia_lang['Device_TableHead_LastSession'] = 'Última sesión'; $pia_lang['Device_TableHead_LastSession'] = 'Última sesión';
$pia_lang['Device_TableHead_LastIP'] = 'Última IP'; $pia_lang['Device_TableHead_LastIP'] = 'Última IP';
$pia_lang['Device_TableHead_MAC'] = 'MAC'; $pia_lang['Device_TableHead_MAC'] = 'MAC';
@@ -31,21 +31,21 @@ $pia_lang['Device_TableHead_Status'] = 'Estado';
$pia_lang['Device_Searchbox'] = 'Búsqueda'; $pia_lang['Device_Searchbox'] = 'Búsqueda';
$pia_lang['Device_Tablelenght'] = 'Mostrar _MENU_ entradas'; $pia_lang['Device_Tablelenght'] = 'Mostrar _MENU_ entradas';
$pia_lang['Device_Tablelenght_all'] = 'Todos'; $pia_lang['Device_Tablelenght_all'] = 'Todos';
$pia_lang['Device_Table_info'] = 'Mostrando el _INICIO_ hasta el _FINAL_ de las entradas del _TOTAL'; $pia_lang['Device_Table_info'] = 'Mostrando el INICIO y el FINAL de TODAS las entradas';
$pia_lang['Device_Table_nav_next'] = 'Siguiente'; $pia_lang['Device_Table_nav_next'] = 'Siguiente';
$pia_lang['Device_Table_nav_prev'] = 'Anterior'; $pia_lang['Device_Table_nav_prev'] = 'Anterior';
////////////////////////////////////////////////////////////////// //////////////////////////////////////////////////////////////////
// Presence Page - by @TeroRERO 20jul2022 // Presence Page - by @TeroRERO 23jul2022
////////////////////////////////////////////////////////////////// //////////////////////////////////////////////////////////////////
$pia_lang['Presence_Title'] = 'Presencia por dispositivo'; $pia_lang['Presence_Title'] = 'Historial por dispositivo';
$pia_lang['Presence_Shortcut_AllDevices'] = 'Todos los dispositivos'; $pia_lang['Presence_Shortcut_AllDevices'] = 'Todos';
$pia_lang['Presence_Shortcut_Connected'] = 'Conectada'; $pia_lang['Presence_Shortcut_Connected'] = 'Conectado(s)';
$pia_lang['Presence_Shortcut_Favorites'] = 'Favoritos'; $pia_lang['Presence_Shortcut_Favorites'] = 'Favorito(s)';
$pia_lang['Presence_Shortcut_NewDevices'] = 'Nuevos dispositivos'; $pia_lang['Presence_Shortcut_NewDevices'] = 'Nuevo(s)';
$pia_lang['Presence_Shortcut_DownAlerts'] = 'Alertas de caídas'; $pia_lang['Presence_Shortcut_DownAlerts'] = 'Alerta(s) de caída(s)';
$pia_lang['Presence_Shortcut_Archived'] = 'Archivada'; $pia_lang['Presence_Shortcut_Archived'] = 'Archivado(s)';
$pia_lang['Presence_Shortcut_Devices'] = 'Dispositivos'; $pia_lang['Presence_Shortcut_Devices'] = 'Dispositivos';
// Localizationfiles under pialert/front/lib/AdminLTE/bower_components/fullcalendar/dist/locale // Localizationfiles under pialert/front/lib/AdminLTE/bower_components/fullcalendar/dist/locale
@@ -57,7 +57,7 @@ $pia_lang['Presence_CalHead_month'] = 'mes';
$pia_lang['Presence_CalHead_week'] = 'semana'; $pia_lang['Presence_CalHead_week'] = 'semana';
////////////////////////////////////////////////////////////////// //////////////////////////////////////////////////////////////////
// Events Page - by @TeroRERO 20jul2022 // Events Page - by @TeroRERO 23jul2022
////////////////////////////////////////////////////////////////// //////////////////////////////////////////////////////////////////
$pia_lang['Events_Title'] = 'Eventos'; $pia_lang['Events_Title'] = 'Eventos';
@@ -70,8 +70,8 @@ $pia_lang['Events_Shortcut_AllEvents'] = 'Todos los eventos';
$pia_lang['Events_Shortcut_Sessions'] = 'Sesiones'; $pia_lang['Events_Shortcut_Sessions'] = 'Sesiones';
$pia_lang['Events_Shortcut_MissSessions'] = 'Sesiones faltantes'; $pia_lang['Events_Shortcut_MissSessions'] = 'Sesiones faltantes';
$pia_lang['Events_Shortcut_VoidSessions'] = 'Sesiones anuladas'; $pia_lang['Events_Shortcut_VoidSessions'] = 'Sesiones anuladas';
$pia_lang['Events_Shortcut_NewDevices'] = 'Nuevos dispositivos'; $pia_lang['Events_Shortcut_NewDevices'] = 'Nuevo(s)';
$pia_lang['Events_Shortcut_DownAlerts'] = 'Alertas de caídas'; $pia_lang['Events_Shortcut_DownAlerts'] = 'Alerta(s) de caída(s)';
$pia_lang['Events_Shortcut_Events'] = 'Eventos'; $pia_lang['Events_Shortcut_Events'] = 'Eventos';
$pia_lang['Events_TableHead_Order'] = 'Ordenar'; $pia_lang['Events_TableHead_Order'] = 'Ordenar';
$pia_lang['Events_TableHead_Device'] = 'Dispositivo'; $pia_lang['Events_TableHead_Device'] = 'Dispositivo';
@@ -82,18 +82,18 @@ $pia_lang['Events_TableHead_Connection'] = 'Conexión';
$pia_lang['Events_TableHead_Disconnection'] = 'Desconexión'; $pia_lang['Events_TableHead_Disconnection'] = 'Desconexión';
$pia_lang['Events_TableHead_Duration'] = 'Duración'; $pia_lang['Events_TableHead_Duration'] = 'Duración';
$pia_lang['Events_TableHead_DurationOrder'] = 'Orden de duración'; $pia_lang['Events_TableHead_DurationOrder'] = 'Orden de duración';
$pia_lang['Events_TableHead_IP'] = 'IP'; $pia_lang['Events_TableHead_IP'] = 'Dirección IP';
$pia_lang['Events_TableHead_IPOrder'] = 'Orden de IP'; $pia_lang['Events_TableHead_IPOrder'] = 'Orden de IP';
$pia_lang['Events_TableHead_AdditionalInfo'] = 'Información adicional'; $pia_lang['Events_TableHead_AdditionalInfo'] = 'Información adicional';
$pia_lang['Events_Searchbox'] = 'Búsqueda'; $pia_lang['Events_Searchbox'] = 'Búsqueda';
$pia_lang['Events_Tablelenght'] = 'Montras entradas del _MENU'; $pia_lang['Events_Tablelenght'] = 'Mostrando entradas del MENÚ';
$pia_lang['Events_Tablelenght_all'] = 'Todos'; $pia_lang['Events_Tablelenght_all'] = 'Todos';
$pia_lang['Events_Table_info'] = 'Mostrando el _INICIO_ hasta el _FIN_ del _TOTAL'; $pia_lang['Events_Table_info'] = 'Mostrando el INICIO y el FINAL de TODAS las entradas';
$pia_lang['Events_Table_nav_next'] = 'Siguiente'; $pia_lang['Events_Table_nav_next'] = 'Siguiente';
$pia_lang['Events_Table_nav_prev'] = 'Anterior'; $pia_lang['Events_Table_nav_prev'] = 'Anterior';
////////////////////////////////////////////////////////////////// //////////////////////////////////////////////////////////////////
// Device Details Page - by @TeroRERO 20jul2022 // Device Details Page - by @TeroRERO 23jul2022
////////////////////////////////////////////////////////////////// //////////////////////////////////////////////////////////////////
$pia_lang['DevDetail_Periodselect_today'] = 'Hoy'; $pia_lang['DevDetail_Periodselect_today'] = 'Hoy';
@@ -103,12 +103,12 @@ $pia_lang['DevDetail_Periodselect_LastYear'] = 'El año pasado';
$pia_lang['DevDetail_Periodselect_All'] = 'Toda la información'; $pia_lang['DevDetail_Periodselect_All'] = 'Toda la información';
$pia_lang['DevDetail_Shortcut_CurrentStatus'] = 'Estado actual'; $pia_lang['DevDetail_Shortcut_CurrentStatus'] = 'Estado actual';
$pia_lang['DevDetail_Shortcut_Sessions'] = 'Sesiones'; $pia_lang['DevDetail_Shortcut_Sessions'] = 'Sesiones';
$pia_lang['DevDetail_Shortcut_Presence'] = 'Presencia'; $pia_lang['DevDetail_Shortcut_Presence'] = 'Historial';
$pia_lang['DevDetail_Shortcut_DownAlerts'] = 'Alertas de caídas'; $pia_lang['DevDetail_Shortcut_DownAlerts'] = 'Alerta(s) de caída(s)';
$pia_lang['DevDetail_Tab_Details'] = 'Detalles'; $pia_lang['DevDetail_Tab_Details'] = 'Detalles';
$pia_lang['DevDetail_Tab_Nmap'] = 'Nmap'; $pia_lang['DevDetail_Tab_Nmap'] = 'Nmap';
$pia_lang['DevDetail_Tab_Sessions'] = 'Sesiones'; $pia_lang['DevDetail_Tab_Sessions'] = 'Sesiones';
$pia_lang['DevDetail_Tab_Presence'] = 'Presencia'; $pia_lang['DevDetail_Tab_Presence'] = 'Historial';
$pia_lang['DevDetail_Tab_Events'] = 'Eventos'; $pia_lang['DevDetail_Tab_Events'] = 'Eventos';
$pia_lang['DevDetail_MainInfo_Title'] = 'Información principal'; $pia_lang['DevDetail_MainInfo_Title'] = 'Información principal';
$pia_lang['DevDetail_MainInfo_mac'] = 'MAC'; $pia_lang['DevDetail_MainInfo_mac'] = 'MAC';
@@ -122,7 +122,7 @@ $pia_lang['DevDetail_MainInfo_Location'] = 'Ubicación';
$pia_lang['DevDetail_MainInfo_Comments'] = 'Comentario'; $pia_lang['DevDetail_MainInfo_Comments'] = 'Comentario';
$pia_lang['DevDetail_SessionInfo_Title'] = 'Información de sesión'; $pia_lang['DevDetail_SessionInfo_Title'] = 'Información de sesión';
$pia_lang['DevDetail_SessionInfo_Status'] = 'Estado'; $pia_lang['DevDetail_SessionInfo_Status'] = 'Estado';
$pia_lang['DevDetail_SessionInfo_FirstSession'] = 'Primera sesión'; $pia_lang['DevDetail_SessionInfo_FirstSession'] = '1ra. sesión';
$pia_lang['DevDetail_SessionInfo_LastSession'] = 'Última sesión'; $pia_lang['DevDetail_SessionInfo_LastSession'] = 'Última sesión';
$pia_lang['DevDetail_SessionInfo_LastIP'] = 'Última IP'; $pia_lang['DevDetail_SessionInfo_LastIP'] = 'Última IP';
$pia_lang['DevDetail_SessionInfo_StaticIP'] = 'IP estática'; $pia_lang['DevDetail_SessionInfo_StaticIP'] = 'IP estática';
@@ -134,8 +134,8 @@ $pia_lang['DevDetail_EveandAl_Skip'] = 'Omitir notificaciones repetidas durante'
$pia_lang['DevDetail_EveandAl_NewDevice'] = 'Nuevo dispositivo'; $pia_lang['DevDetail_EveandAl_NewDevice'] = 'Nuevo dispositivo';
$pia_lang['DevDetail_EveandAl_Archived'] = 'Archivada'; $pia_lang['DevDetail_EveandAl_Archived'] = 'Archivada';
$pia_lang['DevDetail_EveandAl_RandomMAC'] = 'MAC al azar'; $pia_lang['DevDetail_EveandAl_RandomMAC'] = 'MAC al azar';
$pia_lang['DevDetail_EveandAl_ScanCycle_a'] = 'Scan Device (1 min)'; $pia_lang['DevDetail_EveandAl_ScanCycle_a'] = 'Escanear Dispositivo (1 min)';
$pia_lang['DevDetail_EveandAl_ScanCycle_z'] = 'Don&#39;t Scan Device (0 min)'; $pia_lang['DevDetail_EveandAl_ScanCycle_z'] = 'No Escanear Dispositivo (0 min)';
$pia_lang['DevDetail_button_Delete'] = 'Eliminar dispositivo'; $pia_lang['DevDetail_button_Delete'] = 'Eliminar dispositivo';
$pia_lang['DevDetail_button_Reset'] = 'Restablecer cambios'; $pia_lang['DevDetail_button_Reset'] = 'Restablecer cambios';
$pia_lang['DevDetail_button_Save'] = 'Guardar'; $pia_lang['DevDetail_button_Save'] = 'Guardar';
@@ -143,7 +143,7 @@ $pia_lang['DevDetail_SessionTable_Order'] = 'Ordenar';
$pia_lang['DevDetail_SessionTable_Connection'] = 'Conexión'; $pia_lang['DevDetail_SessionTable_Connection'] = 'Conexión';
$pia_lang['DevDetail_SessionTable_Disconnection'] = 'Desconexión'; $pia_lang['DevDetail_SessionTable_Disconnection'] = 'Desconexión';
$pia_lang['DevDetail_SessionTable_Duration'] = 'Duración'; $pia_lang['DevDetail_SessionTable_Duration'] = 'Duración';
$pia_lang['DevDetail_SessionTable_IP'] = 'IP'; $pia_lang['DevDetail_SessionTable_IP'] = 'Dirección IP';
$pia_lang['DevDetail_SessionTable_Additionalinfo'] = 'Información adicional'; $pia_lang['DevDetail_SessionTable_Additionalinfo'] = 'Información adicional';
$pia_lang['DevDetail_Events_CheckBox'] = 'Ocultar eventos de conexión'; $pia_lang['DevDetail_Events_CheckBox'] = 'Ocultar eventos de conexión';
$pia_lang['DevDetail_Nmap_buttonFast'] = 'Exploración rápida'; $pia_lang['DevDetail_Nmap_buttonFast'] = 'Exploración rápida';
@@ -158,33 +158,36 @@ $pia_lang['DevDetail_Nmap_buttonDetail_text'] = 'Escaneo detallado: escaneo pred
////////////////////////////////////////////////////////////////// //////////////////////////////////////////////////////////////////
$pia_lang['Maintenance_Title'] = 'Herramientas de mantenimiento'; $pia_lang['Maintenance_Title'] = 'Herramientas de mantenimiento';
$pia_lang['Maintenance_database_path'] = 'Ruta de la base de datos'; $pia_lang['Maintenance_database_path'] = 'Ruta de la base de datos:';
$pia_lang['Maintenance_database_size'] = 'Tamaño de base de datos'; $pia_lang['Maintenance_database_size'] = 'Tamaño de base de datos:';
$pia_lang['Maintenance_database_lastmod'] = 'última modificación'; $pia_lang['Maintenance_database_lastmod'] = 'Última modificación:';
$pia_lang['Maintenance_database_backup'] = 'DB Respaldos'; $pia_lang['Maintenance_database_backup'] = 'Copias de seguridad de la BD:';
$pia_lang['Maintenance_database_backup_found'] = 'copias de seguridad donde se encuentran'; $pia_lang['Maintenance_database_backup_found'] = 'copia(s) de seguridad encontrada(s)';
$pia_lang['Maintenance_database_backup_total'] = 'Uso total de disco'; $pia_lang['Maintenance_database_backup_total'] = 'Uso total de disco';
$pia_lang['Maintenance_arp_status'] = 'Estado de escaneo'; $pia_lang['Maintenance_arp_status'] = 'Estado de escaneo:';
$pia_lang['Maintenance_arp_status_off'] = 'está actualmente deshabilitado'; $pia_lang['Maintenance_arp_status_off'] = 'está actualmente deshabilitado';
$pia_lang['Maintenance_arp_status_on'] = 'escaneo(s) actualmente en ejecución'; $pia_lang['Maintenance_arp_status_on'] = 'escaneo(s) actualmente en ejecución';
$pia_lang['Maintenance_themeselector_lable'] = 'Seleccionar Skin'; $pia_lang['Maintenance_themeselector_lable'] = 'Seleccionar Skin';
$pia_lang['Maintenance_themeselector_empty'] = 'Elige un Skin'; $pia_lang['Maintenance_themeselector_empty'] = 'Elija un Skin';
$pia_lang['Maintenance_themeselector_text'] = 'El cambio tiene lugar en el lado del servidor, por lo que afecta todos los dispositivos en uso.'; $pia_lang['Maintenance_themeselector_text'] = 'El cambio tiene lugar en el lado del servidor, por lo que afecta todos los dispositivos en uso.';
$pia_lang['Maintenance_themeselector_apply'] = 'Apply'; $pia_lang['Maintenance_themeselector_apply'] = 'Aplicar';
$pia_lang['Maintenance_lang_selector_lable'] = 'Seleccione el idioma'; $pia_lang['Maintenance_lang_selector_lable'] = 'Seleccione su idioma';
$pia_lang['Maintenance_lang_selector_empty'] = 'Elija el idioma'; $pia_lang['Maintenance_lang_selector_empty'] = 'Elija un idioma';
$pia_lang['Maintenance_lang_en_us'] = 'English (US)'; $pia_lang['Maintenance_lang_en_us'] = 'English (US)';
$pia_lang['Maintenance_lang_de_de'] = 'German (DE)'; $pia_lang['Maintenance_lang_de_de'] = 'German (DE)';
$pia_lang['Maintenance_lang_es_es'] = 'Spanish (ES)'; $pia_lang['Maintenance_lang_es_es'] = 'Spanish (ES)';
$pia_lang['Maintenance_lang_selector_text'] = 'El cambio tiene lugar en el lado del servidor, por lo que afecta todos los dispositivos en uso.'; $pia_lang['Maintenance_lang_selector_text'] = 'El cambio tiene lugar en el lado del servidor, por lo que afecta todos los dispositivos en uso.';
$pia_lang['Maintenance_lang_selector_apply'] = 'Apply'; $pia_lang['Maintenance_lang_selector_apply'] = 'Aplicar';
$pia_lang['Maintenance_Tools_Tab_Settings'] = 'Ajustes';
$pia_lang['Maintenance_Tools_Tab_Tools'] = 'Tools';
$pia_lang['Maintenance_Tools_Tab_BackupRestore'] = 'Respaldo / Restaurar';
$pia_lang['Maintenance_Tool_darkmode'] = 'Cambiar Modo (Dark/Light)'; $pia_lang['Maintenance_Tool_darkmode'] = 'Cambiar Modo (Dark/Light)';
$pia_lang['Maintenance_Tool_darkmode_text'] = 'Alternar entre el modo oscuro y el modo de luz. Si el interruptor no funciona correctamente, intente borrar el caché del navegador. El cambio tiene lugar en el lado del servidor, por lo que afecta todos los dispositivos en uso.'; $pia_lang['Maintenance_Tool_darkmode_text'] = 'Alternar entre el modo oscuro y el modo de luz. Si el interruptor no funciona correctamente, intente borrar el caché del navegador. El cambio tiene lugar en el lado del servidor, por lo que afecta todos los dispositivos en uso.';
$pia_lang['Maintenance_Tool_darkmode_noti'] = 'Cambiar Modo'; $pia_lang['Maintenance_Tool_darkmode_noti'] = 'Cambiar Modo';
$pia_lang['Maintenance_Tool_darkmode_noti_text'] = 'Después del cambio de tema, la página intenta volver a cargar para activar el cambio. Si es necesario, el caché debe ser eliminado.'; $pia_lang['Maintenance_Tool_darkmode_noti_text'] = 'Después del cambio de tema, la página intenta volver a cargar para activar el cambio. Si es necesario, el caché debe ser eliminado.';
$pia_lang['Maintenance_Tool_arpscansw'] = 'Alternar arp-scan (on/off)'; $pia_lang['Maintenance_Tool_arpscansw'] = 'Activar arp-scan (on/off)';
$pia_lang['Maintenance_Tool_arpscansw_text'] = 'Encender o desactivar el arp-scan. Cuando el escaneo se ha apagado, permanece apagado hasta que se active nuevamente. Los escaneos activos no se cancelan.'; $pia_lang['Maintenance_Tool_arpscansw_text'] = 'Encender o desactivar el arp-scan. Cuando el escaneo se ha apagado, permanece apagado hasta que se active nuevamente. Los escaneos activos no se cancelan.';
$pia_lang['Maintenance_Tool_arpscansw_noti'] = 'Alternar arp-scan on or off'; $pia_lang['Maintenance_Tool_arpscansw_noti'] = 'Activar arp-scan on or off';
$pia_lang['Maintenance_Tool_arpscansw_noti_text'] = 'Cuando el escaneo se ha apagado, permanece apagado hasta que se active nuevamente.'; $pia_lang['Maintenance_Tool_arpscansw_noti_text'] = 'Cuando el escaneo se ha apagado, permanece apagado hasta que se active nuevamente.';
$pia_lang['Maintenance_Tool_del_empty_macs'] = 'Eliminar dispositivos con MACs vacíos'; $pia_lang['Maintenance_Tool_del_empty_macs'] = 'Eliminar dispositivos con MACs vacíos';
$pia_lang['Maintenance_Tool_del_empty_macs_text'] = 'Antes de usar esta función, haga una copia de seguridad. La eliminación no se puede deshacer. Todos los dispositivos sin Mac se eliminarán de la base de datos.'; $pia_lang['Maintenance_Tool_del_empty_macs_text'] = 'Antes de usar esta función, haga una copia de seguridad. La eliminación no se puede deshacer. Todos los dispositivos sin Mac se eliminarán de la base de datos.';
@@ -201,29 +204,29 @@ $pia_lang['Maintenance_Tool_del_unknowndev'] = 'Eliminar dispositivos (desconoci
$pia_lang['Maintenance_Tool_del_unknowndev_text'] = 'Antes de usar esta función, haga una copia de seguridad. La eliminación no se puede deshacer. Todos los dispositivos nombrados (desconocidos) se eliminarán de la base de datos.'; $pia_lang['Maintenance_Tool_del_unknowndev_text'] = 'Antes de usar esta función, haga una copia de seguridad. La eliminación no se puede deshacer. Todos los dispositivos nombrados (desconocidos) se eliminarán de la base de datos.';
$pia_lang['Maintenance_Tool_del_unknowndev_noti'] = 'Eliminar dispositivos (desconocidos)'; $pia_lang['Maintenance_Tool_del_unknowndev_noti'] = 'Eliminar dispositivos (desconocidos)';
$pia_lang['Maintenance_Tool_del_unknowndev_noti_text'] = '¿Estás seguro de que quieres eliminar todos los dispositivos (desconocidos)?'; $pia_lang['Maintenance_Tool_del_unknowndev_noti_text'] = '¿Estás seguro de que quieres eliminar todos los dispositivos (desconocidos)?';
$pia_lang['Maintenance_Tool_del_allevents'] = 'Eliminar todos los eventos (Restablecer presencia)'; $pia_lang['Maintenance_Tool_del_allevents'] = 'Eliminar todo (Restablecer historial)';
$pia_lang['Maintenance_Tool_del_allevents_text'] = 'Antes de usar esta función, haga una copia de seguridad. La eliminación no se puede deshacer. Se eliminarán todos los eventos en la base de datos. En ese momento se restablecerá la presencia de todos los dispositivos. Esto puede conducir a sesiones no válidas. Esto significa que los dispositivos se muestran como "presentes", aunque están fuera de línea. Un escaneo mientras el dispositivo en cuestión está en línea resuelve el problema.'; $pia_lang['Maintenance_Tool_del_allevents_text'] = 'Antes de usar esta función, haga una copia de seguridad. La eliminación no se puede deshacer. Se eliminarán todos los eventos en la base de datos. En ese momento se restablecerá la presencia de todos los dispositivos. Esto puede conducir a sesiones no válidas. Esto significa que los dispositivos se muestran como "presentes", aunque están fuera de línea. Un escaneo mientras el dispositivo en cuestión está en línea resuelve el problema.';
$pia_lang['Maintenance_Tool_del_allevents_noti'] = 'Eliminar eventos'; $pia_lang['Maintenance_Tool_del_allevents_noti'] = 'Eliminar eventos';
$pia_lang['Maintenance_Tool_del_allevents_noti_text'] = '¿Estás seguro de que quieres eliminar todos los eventos? Esto restablece la presencia de todos los dispositivos.'; $pia_lang['Maintenance_Tool_del_allevents_noti_text'] = '¿Estás seguro de que quieres eliminar todos los eventos? Esto restablece la presencia de todos los dispositivos.';
$pia_lang['Maintenance_Tool_backup'] = 'DB Respaldo'; $pia_lang['Maintenance_Tool_backup'] = 'Respaldar DB';
$pia_lang['Maintenance_Tool_backup_text'] = 'Las copias de seguridad de la base de datos se encuentran en el directorio de la base de datos como una Zip-Archive, nombrada con la fecha de creación. No hay un número máximo de copias de seguridad.'; $pia_lang['Maintenance_Tool_backup_text'] = 'Las copias de seguridad de la base de datos se encuentran en el directorio de la base de datos como una Zip-Archive, nombrada con la fecha de creación. No hay un número máximo de copias de seguridad.';
$pia_lang['Maintenance_Tool_backup_noti'] = 'DB Respaldo'; $pia_lang['Maintenance_Tool_backup_noti'] = 'Respaldar DB';
$pia_lang['Maintenance_Tool_backup_noti_text'] = '¿Estás seguro de que quieres exactos la copia de seguridad de DB? Asegúrese de que ningún escaneo se esté ejecutando actualmente.'; $pia_lang['Maintenance_Tool_backup_noti_text'] = '¿Estás seguro de que quieres exactos la copia de seguridad de DB? Asegúrese de que ningún escaneo se esté ejecutando actualmente.';
$pia_lang['Maintenance_Tool_restore'] = 'DB Restaurar'; $pia_lang['Maintenance_Tool_restore'] = 'Restaurar DB';
$pia_lang['Maintenance_Tool_restore_text'] = 'La última copia de seguridad se puede restaurar a través del botón, pero las copias de seguridad anteriores solo se pueden restaurar manualmente. Después de la restauración, realice una verificación de integridad en la base de datos por seguridad, en caso de que el DB estuviera actualmente en acceso de escritura cuando se creó la copia de seguridad.'; $pia_lang['Maintenance_Tool_restore_text'] = 'La última copia de seguridad se puede restaurar a través del botón, pero las copias de seguridad anteriores solo se pueden restaurar manualmente. Después de la restauración, realice una verificación de integridad en la base de datos por seguridad, en caso de que el DB estuviera actualmente en acceso de escritura cuando se creó la copia de seguridad.';
$pia_lang['Maintenance_Tool_restore_noti'] = 'DB Restaurar'; $pia_lang['Maintenance_Tool_restore_noti'] = 'Restaurar DB';
$pia_lang['Maintenance_Tool_restore_noti_text'] = '¿Estás seguro de que quieres hacer exactos la restauración de DB? Asegúrese de que ningún escaneo se esté ejecutando actualmente.'; $pia_lang['Maintenance_Tool_restore_noti_text'] = '¿Estás seguro de que quieres hacer exactos la restauración de DB? Asegúrese de que ningún escaneo se esté ejecutando actualmente.';
////////////////////////////////////////////////////////////////// //////////////////////////////////////////////////////////////////
// Maintenance Page - by @TeroRERO 20jul2022 // Maintenance Page - by @TeroRERO 23jul2022
////////////////////////////////////////////////////////////////// //////////////////////////////////////////////////////////////////
$pia_lang['BackDevices_Arpscan_disabled'] = 'Arp-Scan Desactivada'; $pia_lang['BackDevices_Arpscan_disabled'] = 'Arp-Scan Desactivado';
$pia_lang['BackDevices_Arpscan_enabled'] = 'Arp-Scan Activada'; $pia_lang['BackDevices_Arpscan_enabled'] = 'Arp-Scan Activado';
$pia_lang['BackDevices_darkmode_disabled'] = 'Darkmode Desactivado'; $pia_lang['BackDevices_darkmode_disabled'] = 'Darkmode Desactivado';
$pia_lang['BackDevices_darkmode_enabled'] = 'Darkmode Activado'; $pia_lang['BackDevices_darkmode_enabled'] = 'Darkmode Activado';
$pia_lang['BackDevices_Restore_CopError'] = 'La base de datos original no se pudo guardar.'; $pia_lang['BackDevices_Restore_CopError'] = 'La base de datos original no se pudo guardar.';
$pia_lang['BackDevices_Restore_okay'] = 'Restaurar ejecutado con éxito.'; $pia_lang['BackDevices_Restore_okay'] = 'Restauración ejecutado con éxito.';
$pia_lang['BackDevices_Restore_Failed'] = 'La restauración falló. Restaurar la copia de seguridad manualmente.'; $pia_lang['BackDevices_Restore_Failed'] = 'La restauración falló. Restaurar la copia de seguridad manualmente.';
$pia_lang['BackDevices_Backup_CopError'] = 'La base de datos original no se pudo guardar.'; $pia_lang['BackDevices_Backup_CopError'] = 'La base de datos original no se pudo guardar.';
$pia_lang['BackDevices_Backup_okay'] = 'La copia de seguridad ejecutada con éxito con el nuevo archivo'; $pia_lang['BackDevices_Backup_okay'] = 'La copia de seguridad ejecutada con éxito con el nuevo archivo';
@@ -239,4 +242,3 @@ $pia_lang['BackDevices_DBTools_UpdDevError'] = 'Error al actualizar el dispositi
$pia_lang['BackDevices_DBTools_Upgrade'] = 'Base de datos actualizada correctamente'; $pia_lang['BackDevices_DBTools_Upgrade'] = 'Base de datos actualizada correctamente';
$pia_lang['BackDevices_DBTools_UpgradeError'] = 'Falló la actualización de la base de datos'; $pia_lang['BackDevices_DBTools_UpgradeError'] = 'Falló la actualización de la base de datos';
?> ?>

View File

@@ -8,6 +8,14 @@
#--------------------------------------------------------------------------- --> #--------------------------------------------------------------------------- -->
<?php <?php
session_start();
if ($_SESSION["login"] != 1)
{
header('Location: /pialert/index.php');
exit;
}
require 'php/templates/header.php'; require 'php/templates/header.php';
require 'php/templates/graph.php'; require 'php/templates/graph.php';
?> ?>