traduzione e composer.json

This commit is contained in:
mariano
2026-05-21 11:08:15 +02:00
parent f0eaa76f17
commit f0a5be45ee
15 changed files with 198 additions and 22 deletions
+23
View File
@@ -0,0 +1,23 @@
{
"name": "finstral/glpi-urbackup-plugin",
"description": "UrBackup integration plugin for GLPI 11",
"type": "glpi-plugin",
"license": "GPL-2.0-or-later",
"require": {
"php": ">=8.3"
},
"autoload": {
"psr-4": {
"GlpiPlugin\\Urbackup\\": "src/"
}
},
"config": {
"optimize-autoloader": true,
"sort-packages": true
},
"extra": {
"glpi-plugin": {
"key": "urbackup"
}
}
}
+1 -1
View File
@@ -1,5 +1,5 @@
{ {
"name": "finstral/glpi-urbackup-plugin", "name": "glpi/urbackup-plugin",
"description": "UrBackup integration plugin for GLPI 11", "description": "UrBackup integration plugin for GLPI 11",
"type": "glpi-plugin", "type": "glpi-plugin",
"license": "GPL-2.0-or-later", "license": "GPL-2.0-or-later",
+6 -6
View File
@@ -27,11 +27,11 @@ $itemtype = (string) ($_POST['itemtype'] ?? $_GET['itemtype'] ?? '');
$items_id = (int) ($_POST['items_id'] ?? $_GET['items_id'] ?? 0); $items_id = (int) ($_POST['items_id'] ?? $_GET['items_id'] ?? 0);
if ($itemtype === '' || $items_id <= 0) { if ($itemtype === '' || $items_id <= 0) {
Html::displayValidationError(__('Invalid parameters')); Html::displayValidationError(__('Invalid parameters', 'urbackup'));
} }
if (!in_array($itemtype, Config::getEnabledItemtypes(), true)) { if (!in_array($itemtype, Config::getEnabledItemtypes(), true)) {
Html::displayValidationError(__('Item type not enabled for UrBackup')); Html::displayValidationError(__('Item type not enabled for UrBackup', 'urbackup'));
} }
$item = getItemForItemtype($itemtype); $item = getItemForItemtype($itemtype);
@@ -48,13 +48,13 @@ if (isset($_POST['connect'])) {
$server_id = (int) ($_POST['plugin_urbackup_servers_id'] ?? 0); $server_id = (int) ($_POST['plugin_urbackup_servers_id'] ?? 0);
if ($server_id <= 0) { if ($server_id <= 0) {
Html::displayValidationError(__('No server selected')); Html::displayValidationError(__('No server selected', 'urbackup'));
} }
$link = ServerAsset::getLinkForAsset($itemtype, $items_id); $link = ServerAsset::getLinkForAsset($itemtype, $items_id);
if ($link !== null) { if ($link !== null) {
Html::displayValidationError(__('Asset is already linked to a server')); Html::displayValidationError(__('Asset is already linked to a server', 'urbackup'));
} }
$result = ServerAsset::createForAsset($itemtype, $items_id, $server_id); $result = ServerAsset::createForAsset($itemtype, $items_id, $server_id);
@@ -63,7 +63,7 @@ if (isset($_POST['connect'])) {
$item->getFromDB($items_id); $item->getFromDB($items_id);
Html::redirect($item->getLinkURL()); Html::redirect($item->getLinkURL());
} else { } else {
Html::displayValidationError(__('Failed to link asset to server')); Html::displayValidationError(__('Failed to link asset to server', 'urbackup'));
} }
} }
@@ -78,7 +78,7 @@ if (isset($_POST['disconnect'])) {
$item->getFromDB($items_id); $item->getFromDB($items_id);
Html::redirect($item->getLinkURL()); Html::redirect($item->getLinkURL());
} else { } else {
Html::displayValidationError(__('Failed to disconnect asset from server')); Html::displayValidationError(__('Failed to disconnect asset from server', 'urbackup'));
} }
} }
+1 -1
View File
@@ -18,7 +18,7 @@ if (!Profile::canCurrentUser(READ)) {
} }
Html::header( Html::header(
'UrBackup Servers', __('UrBackup Servers', 'urbackup'),
'', '',
'admin', 'admin',
'GlpiPlugin\Urbackup\Server' 'GlpiPlugin\Urbackup\Server'
+3 -3
View File
@@ -14,21 +14,21 @@ Html::header_nocache();
Session::checkLoginUser(); Session::checkLoginUser();
if (!Session::haveRight('plugin_urbackup', READ)) { if (!Session::haveRight('plugin_urbackup', READ)) {
echo json_encode(['success' => false, 'message' => 'No permission']); echo json_encode(['success' => false, 'message' => __('No permission', 'urbackup')]);
exit; exit;
} }
$server_id = (int) ($_POST['id'] ?? $_GET['id'] ?? 0); $server_id = (int) ($_POST['id'] ?? $_GET['id'] ?? 0);
if ($server_id <= 0) { if ($server_id <= 0) {
echo json_encode(['success' => false, 'message' => 'Invalid server ID']); echo json_encode(['success' => false, 'message' => __('Invalid server ID', 'urbackup')]);
exit; exit;
} }
$server = new GlpiPlugin\Urbackup\Server(); $server = new GlpiPlugin\Urbackup\Server();
if (!$server->getFromDB($server_id)) { if (!$server->getFromDB($server_id)) {
echo json_encode(['success' => false, 'message' => 'Server not found']); echo json_encode(['success' => false, 'message' => __('Server not found', 'urbackup')]);
exit; exit;
} }
+1 -1
View File
@@ -12,7 +12,7 @@ use GlpiPlugin\Urbackup\Config;
use GlpiPlugin\Urbackup\Profile; use GlpiPlugin\Urbackup\Profile;
if (!defined('GLPI_ROOT')) { if (!defined('GLPI_ROOT')) {
die('Sorry. You cannot access this file directly.'); die(__('Sorry. You cannot access this file directly.', 'urbackup'));
} }
/** /**
+1 -1
View File
@@ -11,7 +11,7 @@ declare(strict_types=1);
use GlpiPlugin\Urbackup\Profile; use GlpiPlugin\Urbackup\Profile;
if (!defined('GLPI_ROOT')) { if (!defined('GLPI_ROOT')) {
die('Sorry. You cannot access this file directly.'); die(__('Sorry. You cannot access this file directly.', 'urbackup'));
} }
/** /**
BIN
View File
Binary file not shown.
+52 -1
View File
@@ -155,4 +155,55 @@ msgid "Last backup"
msgstr "Letztes Backup" msgstr "Letztes Backup"
msgid "Show" msgid "Show"
msgstr "Anzeigen" msgstr "Anzeigen"
msgid "HTTP"
msgstr "HTTP"
msgid "HTTPS"
msgstr "HTTPS"
msgid "API Error"
msgstr "API-Fehler"
msgid "Unknown"
msgstr "Unbekannt"
msgid "Asset Definition"
msgstr "Asset-Definition"
msgid "Legacy"
msgstr "Legacy"
msgid "UrBackup Servers"
msgstr "UrBackup-Server"
msgid "Invalid parameters"
msgstr "Ungültige Parameter"
msgid "Item type not enabled for UrBackup"
msgstr "Elementtyp für UrBackup nicht aktiviert"
msgid "No server selected"
msgstr "Kein Server ausgewählt"
msgid "Asset is already linked to a server"
msgstr "Asset ist bereits mit einem Server verknüpft"
msgid "Failed to link asset to server"
msgstr "Verknüpfung von Asset mit Server fehlgeschlagen"
msgid "Failed to disconnect asset from server"
msgstr "Trennung von Asset vom Server fehlgeschlagen"
msgid "No permission"
msgstr "Keine Berechtigung"
msgid "Invalid server ID"
msgstr "Ungültige Server-ID"
msgid "Server not found"
msgstr "Server nicht gefunden"
msgid "Sorry. You cannot access this file directly."
msgstr "Entschuldigung. Sie können nicht direkt auf diese Datei zugreifen."
BIN
View File
Binary file not shown.
+52 -1
View File
@@ -155,4 +155,55 @@ msgid "Last backup"
msgstr "Last backup" msgstr "Last backup"
msgid "Show" msgid "Show"
msgstr "Show" msgstr "Show"
msgid "HTTP"
msgstr "HTTP"
msgid "HTTPS"
msgstr "HTTPS"
msgid "API Error"
msgstr "API Error"
msgid "Unknown"
msgstr "Unknown"
msgid "Asset Definition"
msgstr "Asset Definition"
msgid "Legacy"
msgstr "Legacy"
msgid "UrBackup Servers"
msgstr "UrBackup Servers"
msgid "Invalid parameters"
msgstr "Invalid parameters"
msgid "Item type not enabled for UrBackup"
msgstr "Item type not enabled for UrBackup"
msgid "No server selected"
msgstr "No server selected"
msgid "Asset is already linked to a server"
msgstr "Asset is already linked to a server"
msgid "Failed to link asset to server"
msgstr "Failed to link asset to server"
msgid "Failed to disconnect asset from server"
msgstr "Failed to disconnect asset from server"
msgid "No permission"
msgstr "No permission"
msgid "Invalid server ID"
msgstr "Invalid server ID"
msgid "Server not found"
msgstr "Server not found"
msgid "Sorry. You cannot access this file directly."
msgstr "Sorry. You cannot access this file directly."
BIN
View File
Binary file not shown.
+52 -1
View File
@@ -155,4 +155,55 @@ msgid "Last backup"
msgstr "Ultimo backup" msgstr "Ultimo backup"
msgid "Show" msgid "Show"
msgstr "Mostra" msgstr "Mostra"
msgid "HTTP"
msgstr "HTTP"
msgid "HTTPS"
msgstr "HTTPS"
msgid "API Error"
msgstr "Errore API"
msgid "Unknown"
msgstr "Sconosciuto"
msgid "Asset Definition"
msgstr "Definizione asset"
msgid "Legacy"
msgstr "Legacy"
msgid "UrBackup Servers"
msgstr "Server UrBackup"
msgid "Invalid parameters"
msgstr "Parametri non validi"
msgid "Item type not enabled for UrBackup"
msgstr "Tipo oggetto non abilitato per UrBackup"
msgid "No server selected"
msgstr "Nessun server selezionato"
msgid "Asset is already linked to a server"
msgstr "L'asset è già collegato a un server"
msgid "Failed to link asset to server"
msgstr "Collegamento asset al server fallito"
msgid "Failed to disconnect asset from server"
msgstr "Disconnessione asset dal server fallita"
msgid "No permission"
msgstr "Nessun permesso"
msgid "Invalid server ID"
msgstr "ID server non valido"
msgid "Server not found"
msgstr "Server non trovato"
msgid "Sorry. You cannot access this file directly."
msgstr "Spiacenti. Non puoi accedere direttamente a questo file."
+2 -2
View File
@@ -268,7 +268,7 @@ class Config extends CommonDBTM
'checked' => $is_default, 'checked' => $is_default,
]); ]);
echo "</td>"; echo "</td>";
echo "<td><span class='badge bg-info'>Asset Definition</span></td>"; echo "<td><span class='badge bg-info'>" . htmlspecialchars(__('Asset Definition', 'urbackup')) . "</span></td>";
} else { } else {
// Legacy type // Legacy type
echo "<td>"; echo "<td>";
@@ -278,7 +278,7 @@ class Config extends CommonDBTM
]); ]);
echo "</td>"; echo "</td>";
echo "<td>" . ($is_default ? htmlspecialchars(__('Yes', 'urbackup')) : '') . "</td>"; echo "<td>" . ($is_default ? htmlspecialchars(__('Yes', 'urbackup')) : '') . "</td>";
echo "<td><span class='badge bg-secondary'>Legacy</span></td>"; echo "<td><span class='badge bg-secondary'>" . htmlspecialchars(__('Legacy', 'urbackup')) . "</span></td>";
} }
echo "</tr>"; echo "</tr>";
+4 -4
View File
@@ -386,8 +386,8 @@ class Server extends CommonDBTM
Dropdown::showFromArray( Dropdown::showFromArray(
'protocol', 'protocol',
[ [
'http' => 'HTTP', 'http' => __('HTTP', 'urbackup'),
'https' => 'HTTPS', 'https' => __('HTTPS', 'urbackup'),
], ],
[ [
'value' => $this->fields['protocol'] ?? 'http', 'value' => $this->fields['protocol'] ?? 'http',
@@ -818,7 +818,7 @@ class Server extends CommonDBTM
} }
} catch (\Throwable $e) { } catch (\Throwable $e) {
echo '<div class="alert alert-danger">'; echo '<div class="alert alert-danger">';
echo 'API Error: ' . htmlspecialchars($e->getMessage()); echo htmlspecialchars(__('API Error', 'urbackup')) . ': ' . htmlspecialchars($e->getMessage());
echo '</div>'; echo '</div>';
return; return;
} }
@@ -1006,7 +1006,7 @@ class Server extends CommonDBTM
echo '<tbody>'; echo '<tbody>';
foreach ($unlinkedClients as $uc) { foreach ($unlinkedClients as $uc) {
$clientName = (string) ($uc['name'] ?? 'Unknown'); $clientName = (string) ($uc['name'] ?? __('Unknown', 'urbackup'));
$clientNameLower = strtolower($clientName); $clientNameLower = strtolower($clientName);
$online = $uc['online'] ?? null; $online = $uc['online'] ?? null;