Hi Matthias,
On 28/05/2021 17:41, Matthias Fischer wrote:
Hi,
On 26.05.2021 17:39, Matthias Fischer wrote:
This is just a diff for testing people... ;-)
For clarification: It looks as if I will not have very much time during the next days to get a grip on rewriting this with alternate rows. And I agree to Michael
- rows would fit in with the rest of the layout. ;-)
@Adolf and ALL: If you have any hints, please feel free to participate. :-)
I haven't forgotten about this. I have been working on a bug related to the dhcp.cgi page and found that the bgcolor tags were not all working. Turns out that tag has been deprecated and it is even stated that it does not work with HTML5.
So I have been working to convert all those tags on the dhcp.cgi page to CSS using Leo's example from his zoneinfo.cgi work and some reading up about CSS.
I have now got that working successfully on my dhcp.cgi page. Next need to finish the bug part, I know how I want it to work, and when that is done and the bug fix submitted as a patch, then I will use the new CSS approach to also apply to your backup.cgi page to get the colour coded alternate lines.
Regards,
Adolf.
Best, Matthias
Changelog in short:
Added tables
Cleaned up the code a bit, some if-queries were unnessecary (if
($cgiparams{'ACTION'} eq...)
Deleted unused lang strings (downloadiso, downloadaddon, logs)
Separated the ISO files from the IPF files for better overview.
Added query for deleting a backup file (onclick="return confirm...)
ToDo: Change table layout to alternating rows. If "someone" has some hints how to do this, I'll be grateful.
Signed-off-by: Matthias Fischer matthias.fischer@ipfire.org
html/cgi-bin/backup.cgi | 218 +++++++++++++++++++++++++++++----------- langs/de/cgi-bin/de.pl | 8 +- langs/en/cgi-bin/en.pl | 8 +- langs/es/cgi-bin/es.pl | 1 - langs/fr/cgi-bin/fr.pl | 1 - langs/it/cgi-bin/it.pl | 1 - langs/nl/cgi-bin/nl.pl | 1 - langs/pl/cgi-bin/pl.pl | 1 - langs/ru/cgi-bin/ru.pl | 1 - langs/tr/cgi-bin/tr.pl | 1 - 10 files changed, 174 insertions(+), 67 deletions(-)
diff --git a/html/cgi-bin/backup.cgi b/html/cgi-bin/backup.cgi index 683f8add4..04473428c 100644 --- a/html/cgi-bin/backup.cgi +++ b/html/cgi-bin/backup.cgi @@ -32,7 +32,7 @@ require "${General::swroot}/header.pl";
my %color = (); my %mainsettings = (); -my %cgiparams=(); +my %cgiparams = (); my %checked = (); my $message = ""; my $errormessage = ""; @@ -59,25 +59,13 @@ system("/usr/local/bin/backupctrl makedirs >/dev/null 2>&1 ") unless ( -e '/var/ ############################################################################################################################ ############################################## System calls ohne Http Header ###############################################
-if ($cgiparams{'ACTION'} eq "download") { +if ($cgiparams{'ACTION'} eq "$Lang::tr{'download'}") { my $file = &sanitise_file($cgiparams{'FILE'}); exit(1) unless defined($file);
&deliver_file($file); exit(0);
-} elsif ($cgiparams{'ACTION'} eq "downloadiso") {
my $file = &sanitise_file($cgiparams{'FILE'});
exit(1) unless defined($file);
&deliver_file($file);
exit(0);
-} elsif ($cgiparams{'ACTION'} eq "downloadaddon") {
my $file = &sanitise_file($cgiparams{'FILE'});
exit(1) unless defined($file);
&deliver_file($file);
exit(0);
-} elsif ( $cgiparams{'ACTION'} eq "restore") { +} elsif ( $cgiparams{'ACTION'} eq "$Lang::tr{'restore'}") { my $upload = $a->param("UPLOAD"); open UPLOADFILE, ">/tmp/restore.ipf"; binmode $upload; @@ -87,7 +75,7 @@ if ($cgiparams{'ACTION'} eq "download") { close UPLOADFILE; system("/usr/local/bin/backupctrl restore >/dev/null 2>&1"); } -elsif ( $cgiparams{'ACTION'} eq "restoreaddon" ) +elsif ( $cgiparams{'ACTION'} eq "$Lang::tr{'restoreaddon'}" ) { chomp($cgiparams{'UPLOAD'}); # we need to fix cause IE7 gives the full path and FF only the filename @@ -112,7 +100,7 @@ sub refreshpage{&Header::openbox( 'Waiting', 1, "<meta http-equiv='refresh' cont ############################################################################################################################ ################################################### Default System calls ###################################################
-if ( $cgiparams{'ACTION'} eq "backup" ) +if ( $cgiparams{'ACTION'} eq "$Lang::tr{'backup'}" ) { if ( $cgiparams{'BACKUPLOGS'} eq "include" ) { system("/usr/local/bin/backupctrl include >/dev/null 2>&1"); @@ -122,7 +110,7 @@ if ( $cgiparams{'ACTION'} eq "backup" ) system("/usr/local/bin/backupctrl iso >/dev/null 2>&1"); } } -if ( $cgiparams{'ACTION'} eq "addonbackup" ) +if ( $cgiparams{'ACTION'} eq "$Lang::tr{'addonbackup'}" ) { # Exit if there is any dots or slashes in the addon name exit(1) if ($cgiparams{'ADDON'} =~ /(.|/)/); @@ -132,7 +120,7 @@ if ( $cgiparams{'ACTION'} eq "addonbackup" )
system("/usr/local/bin/backupctrl addonbackup $cgiparams{'ADDON'} >/dev/null 2>&1"); } -elsif ( $cgiparams{'ACTION'} eq "delete" ) +elsif ( $cgiparams{'ACTION'} eq "$Lang::tr{'delete'}" ) { my $file = &sanitise_file($cgiparams{'FILE'}); exit(1) unless defined($file); @@ -157,13 +145,13 @@ if ( -e "/var/tmp/backupiso/" ){ @backupisos = `cd /var/tmp/backupiso/ && ls *.iso 2>/dev/null`; }
-&Header::openbox('100%', 'center', ); +&Header::openbox('100%', 'center', $Lang::tr{'backup config'});
print <<END
<form method='post' action='$ENV{'SCRIPT_NAME'}'> <table width='95%' cellspacing='0'> <tr> - <td align='left' width='40%'>$Lang::tr{'logs'}</td> + <td align='center' width='45%'></td> <td align='left'> <input type='radio' name='BACKUPLOGS' value='include'/> $Lang::tr{'include logfiles'}<br/> <input type='radio' name='BACKUPLOGS' value='exclude' checked='checked'/> $Lang::tr{'exclude logfiles'}<br/> @@ -177,8 +165,8 @@ print <<END </td> </tr> <tr><td align='center' colspan='2'> - <input type='hidden' name='ACTION' value='backup' /> - <input type='image' alt='$Lang::tr{'backup'}' title='$Lang::tr{'backup'}' src='/images/document-save.png' /> + <input type='hidden' name='ACTION' value='$Lang::tr{'backup'}' /> + <input type='image' alt='$Lang::tr{'backup'}' title='$Lang::tr{'backup'}' src='/images/floppy.gif' /> </td></tr> </table> </form> @@ -189,10 +177,17 @@ END ############################################################################################################################ ############################################ Backups des Systems downloaden ################################################
-&Header::openbox('100%', 'center', $Lang::tr{'backups'}); +&Header::openbox('100%', 'center', $Lang::tr{'backups data'});
print <<END -<table width='95%' cellspacing='0'> +<table width='95%' cellspacing='0' border='1'>
+<tr> +<th width='40%'>$Lang::tr{'filename'}</th> +<th>$Lang::tr{'size'}</th> +<th colspan='2'>$Lang::tr{'action'}</th> +</tr>
- END ; foreach (@backups){
@@ -202,9 +197,44 @@ my $Datei = "/var/ipfire/backup/".$_; my @Info = stat($Datei); my $Size = $Info[7] / 1024 / 1024; $Size = sprintf("%0.2f", $Size); -print "<tr><td align='center'>$Lang::tr{'backup from'} $_ $Lang::tr{'size'} $Size MB</td><td width='5'><form method='post' action='$ENV{'SCRIPT_NAME'}'><input type='hidden' name='ACTION' value='download' /><input type='hidden' name='FILE' value='$_' /><input type='image' alt='$Lang::tr{'download'}' title='$Lang::tr{'download'}' src='/images/package-x-generic.png' /></form></td>"; -print "<td width='5'><form method='post' action='$ENV{'SCRIPT_NAME'}'><input type='hidden' name='ACTION' value='delete' /><input type='hidden' name='FILE' value='$_' /><input type='image' alt='$Lang::tr{'delete'}' title='$Lang::tr{'delete'}' src='/images/user-trash.png' /></form></td></tr>";
+print "<tr> +<td align='center'>$_</td> +<td align='center'>$Size MB</td> +<td width='5'><form method='post' action='$ENV{'SCRIPT_NAME'}'>
- <input type='hidden' name='ACTION' value='$Lang::tr{'download'}' />
<input type='hidden' name='FILE' value='$_' />
- <input type='image' alt='$Lang::tr{'download'}' title='$Lang::tr{'download'}' src='/images/go-bottom.png' />
</form></td>";
+print "<td width='5'> +<form method='post' action='$ENV{'SCRIPT_NAME'}'>
- <input type='hidden' name='ACTION' value='$Lang::tr{'delete'}' />
<input type='hidden' name='FILE' value='$_' />
- <input type='image' alt='$Lang::tr{'delete'}' title='$Lang::tr{'delete'}' src='/images/delete.gif' onclick="return confirm('$Lang::tr{'delete file'}');" />
</form></td></tr>"; }
+print <<END +</table> +END +; +&Header::closebox();
+&Header::openbox('100%', 'center', $Lang::tr{'backups iso'});
+print <<END +<table width='95%' cellspacing='0' border='1'>
+<tr> +<th width='40%'>$Lang::tr{'filename'}</th> +<th>$Lang::tr{'size'}</th> +<th colspan='2'>$Lang::tr{'action'}</th> +</tr>
+END +;
- foreach (@backupisos){ if ( $_ !~ /iso$/){next;} chomp($_);
@@ -212,8 +242,22 @@ my $Datei = "/var/tmp/backupiso/".$_; my @Info = stat($Datei); my $Size = $Info[7] / 1024 / 1024; $Size = sprintf("%0.2f", $Size); -print "<tr><td align='center'>$Lang::tr{'backup from'} $_ $Lang::tr{'size'} $Size MB</td><td width='5'><form method='post' action='$ENV{'SCRIPT_NAME'}'><input type='hidden' name='ACTION' value='downloadiso' /><input type='hidden' name='FILE' value='$_' /><input type='image' alt='$Lang::tr{'download'}' title='$Lang::tr{'download'}' src='/images/package-x-generic.png' /></form></td>"; -print "<td width='5'><form method='post' action='$ENV{'SCRIPT_NAME'}'><input type='hidden' name='ACTION' value='delete' /><input type='hidden' name='FILE' value='$_' /><input type='image' alt='$Lang::tr{'delete'}' title='$Lang::tr{'delete'}' src='/images/user-trash.png' /></form></td></tr>";
+print "<tr> +<td align='center' width='40%'>$_</td> +<td align='center'>$Size MB</td> +<td width='5'><form method='post' action='$ENV{'SCRIPT_NAME'}'>
- <input type='hidden' name='ACTION' value='$Lang::tr{'download'}' />
<input type='hidden' name='FILE' value='$_' />
- <input type='image' alt='$Lang::tr{'download'}' title='$Lang::tr{'download'}' src='/images/go-bottom.png' />
</form></td>";
+print "<td width='5'> +<form method='post' action='$ENV{'SCRIPT_NAME'}'>
- <input type='hidden' name='ACTION' value='$Lang::tr{'delete'}' />
<input type='hidden' name='FILE' value='$_' />
- <input type='image' alt='$Lang::tr{'delete'}' title='$Lang::tr{'delete'}' src='/images/delete.gif' onclick="return confirm('$Lang::tr{'delete file'}');" />
</form></td></tr>"; } print <<END </table>
@@ -235,7 +279,19 @@ foreach (@addons){ $addons{$addon}=''; }
-print "<table width='95%' cellspacing='0'>"; +print <<END
+<table width='95%' cellspacing='0' border='1'>
+<tr> +<th width='20%'>$Lang::tr{'name'}</th> +<th width='20%'>$Lang::tr{'date'}</th> +<th>$Lang::tr{'size'}</th> +<th align='center' colspan='3'>$Lang::tr{'action'}</th> +</tr> +END +;
- foreach (@addonincluds){ chomp($_); delete $addons{$_};
@@ -245,69 +301,93 @@ my $Size = $Info[7] / 1024;
if ( -e $Datei ){ if ($Size < 1) {
$Size = sprintf("%.2f", $Size);
print "<tr><td align='center'>$Lang::tr{'backup from'} $_ $Lang::tr{'size'} $Size KB $Lang::tr{'date'} ".localtime($Info[9])."</td>";
- } else {
$Size = sprintf("%2d", $Size);
print "<tr><td align='center'>$Lang::tr{'backup from'} $_ $Lang::tr{'size'} $Size KB $Lang::tr{'date'} ".localtime($Info[9])."</td>";
$Size = sprintf("%.2f", $Size);
+print "<tr>
<td align='center'>$_</td>
<td align='center'>".localtime($Info[9])."</td>
<td align='center'>$Size KB</td>";
</tr>
- }
- } else {
$Size = sprintf("%2d", $Size);
+print "<tr>
<td align='center'>$_</td>
<td align='center'>".localtime($Info[9])."</td>
<td align='center'>$Size KB</td>";
</tr>
}
print <<END
<td align='right' width='5'>
<td align='center' width='5'> <form method='post' action='$ENV{'SCRIPT_NAME'}'>
<input type='hidden' name='ACTION' value='downloadaddon' />
<input type='hidden' name='ACTION' value='$Lang::tr{'download'}' />
<input type='hidden' name='FILE' value='$_.ipf' />
<input type='image' alt='$Lang::tr{'download'}' title='$Lang::tr{'download'}' src='/images/package-x-generic.png' />
<input type='image' alt='$Lang::tr{'download'}' title='$Lang::tr{'download'}' src='/images/go-bottom.png' />
</form> </td>
<td align='right' width='5'>
<td align='center' width='5'> <form method='post' action='$ENV{'SCRIPT_NAME'}'>
<input type='hidden' name='ACTION' value='delete' />
<input type='hidden' name='ACTION' value='$Lang::tr{'delete'}' />
<input type='hidden' name='FILE' value='$_.ipf' />
<input type='image' alt='$Lang::tr{'delete'}' title='$Lang::tr{'delete'}' src='/images/user-trash.png' />
<input type='image' alt='$Lang::tr{'delete'}' title='$Lang::tr{'delete'}' src='/images/delete.gif' onclick=\"return confirm('$Lang::tr{'delete file'}');\" />
</form> </td> END ; }
-else{
- print "<tr><td align='center'>$Lang::tr{'backup from'} $_ </td><td width='5' align='right'></td><td width='5' align='right'></td>";
+else {
- print "<tr>
<td align='center'>$_</td>
<td align='center'> - </td>
<td align='center' width='50%'> - </td>
<td align='center' colspan='2'> - </td>"; }
- print <<END
<td align='right' width='5'> <form method='post' action='$ENV{'SCRIPT_NAME'}'>
<input type='hidden' name='ACTION' value='addonbackup' />
<input type='hidden' name='ACTION' value='$Lang::tr{'addonbackup'}' />
<input type='hidden' name='ADDON' value='$_' />
<input type='image' alt='$Lang::tr{'backup'}' title='$Lang::tr{'backup'}' src='/images/document-save.png' />
<input type='image' alt='$Lang::tr{'backup'}' title='$Lang::tr{'backup'}' src='/images/floppy.gif' />
</form>
</td></tr>
</td>
+</tr> END ;
- }
- foreach (keys(%addons)){ chomp($_); my $Datei = "/var/ipfire/backup/addons/backup/".$_.".ipf"; my @Info = stat($Datei); my $Size = $Info[7] / 1024; $Size = sprintf("%2d", $Size);
-print "<tr><td align='center'>$Lang::tr{'backup from'} $_ $Lang::tr{'size'} $Size KB $Lang::tr{'date'} ".localtime($Info[9])."</td>";
+print "<tr>
<td align='center'>$_</td>
<td align='center'>".localtime($Info[9])."</td>
<td align='center'>$Size KB</td>";
- print <<END
<td align='right' width='5'>
<td align='center' width='5'> <form method='post' action='$ENV{'SCRIPT_NAME'}'>
<input type='hidden' name='ACTION' value='downloadaddon' />
<input type='hidden' name='ACTION' value='$Lang::tr{'download'}' />
<input type='hidden' name='FILE' value='$_.ipf' />
<input type='image' alt='$Lang::tr{'download'}' title='$Lang::tr{'download'}' src='/images/package-x-generic.png' />
<input type='image' alt='$Lang::tr{'download'}' title='$Lang::tr{'download'}' src='/images/go-bottom.png' />
</form> </td>
<td align='right' width='5'>
<td align='center' width='5'> <form method='post' action='$ENV{'SCRIPT_NAME'}'>
<input type='hidden' name='ACTION' value='delete' />
<input type='hidden' name='ACTION' value='$Lang::tr{'delete'}' />
<input type='hidden' name='FILE' value='$_.ipf' />
<input type='image' alt='$Lang::tr{'delete'}' title='$Lang::tr{'delete'}' src='/images/user-trash.png' />
<input type='image' alt='$Lang::tr{'delete'}' title='$Lang::tr{'delete'}' src='/images/delete.gif' onclick=\"return confirm('$Lang::tr{'delete file'}');\" />
</form> </td>
<td align='right' width='5'></td></tr>
</tr> END ; }
@@ -322,9 +402,31 @@ print "</table>";
print <<END
<table width='95%' cellspacing='0'> -<tr><td align='center' colspan='2'><font color='red'><br />$Lang::tr{'backupwarning'}</font><br /><br /></td></tr> -<tr><td align='left'>$Lang::tr{'backup'}</td><td align='left'><form method='post' enctype='multipart/form-data' action='$ENV{'SCRIPT_NAME'}'><input type="file" size='50' name="UPLOAD" /><input type='hidden' name='ACTION' value='restore' /><input type='hidden' name='FILE' /><input type='image' alt='$Lang::tr{'restore'}' title='$Lang::tr{'restore'}' src='/images/media-floppy.png' /></form></td></tr> -<tr><td align='left'>$Lang::tr{'backupaddon'}</td><td align='left'><form method='post' enctype='multipart/form-data' action='$ENV{'SCRIPT_NAME'}'><input type="file" size='50' name="UPLOAD" /><input type='hidden' name='ACTION' value='restoreaddon' /><input type='hidden' name='FILE' /><input type='image' alt='$Lang::tr{'restore'}' title='$Lang::tr{'restore'}' src='/images/media-floppy.png' /></form></td></tr> +<tr> + <td align='center' colspan='2'><font color='red'><br />$Lang::tr{'backupwarning'}</font><br /><br /></td> +</tr> + +<tr> + <td align='center'>$Lang::tr{'backup'}</td> + <td align='left'> + <form method='post' enctype='multipart/form-data' action='$ENV{'SCRIPT_NAME'}'> + <input type="file" size='50' name="UPLOAD" /> + <input type='hidden' name='ACTION' value='$Lang::tr{'restore'}' /> + <input type='hidden' name='FILE' /> + <input type='image' alt='$Lang::tr{'restore'}' title='$Lang::tr{'restore'}' src='/images/go-top.png' /> + </form></td> +</tr> + +<tr> + <td align='center'>$Lang::tr{'backupaddon'}</td> + <td align='left'><form method='post' enctype='multipart/form-data' action='$ENV{'SCRIPT_NAME'}'> + <input type="file" size='50' name="UPLOAD" /> + <input type='hidden' name='ACTION' value='$Lang::tr{'restoreaddon'}' /> + <input type='hidden' name='FILE' /> + <input type='image' alt='$Lang::tr{'restoreaddon'}' title='$Lang::tr{'restoreaddon'}' src='/images/go-top.png' /> + </form></td> +</tr> + </table> END ; diff --git a/langs/de/cgi-bin/de.pl b/langs/de/cgi-bin/de.pl index 95af3155b..37f0cab8a 100644 --- a/langs/de/cgi-bin/de.pl +++ b/langs/de/cgi-bin/de.pl @@ -158,6 +158,7 @@ 'add-route' => 'Zusätzlich zu propagierende Route', 'added from dhcp lease list' => 'hinzugefügt von der DHCP-Zuordnungsliste', 'addon' => 'Add-Ons', +'addonbackup' => 'Sichern', 'addons' => 'Add-Ons', 'admin user password has been changed' => 'Passwort für Benutzer admin wurde geändert.', 'admin users' => 'Liste der Benutzer mit Super User Rechten', @@ -470,8 +471,11 @@ 'backup sets' => 'Datensicherungssätze', 'backup to floppy' => 'Datensicherung auf Diskette', 'backupaddon' => 'Add-On-Sicherung', +'backup config' => 'Konfiguration', 'backupprofile' => 'Falls die Wiederverbindung scheitert, auf dieses Profil umschalten', 'backups' => 'Sicherungen', +'backups data' => 'IPF-Dateien', +'backups iso' => 'ISO-Dateien', 'backupwarning' => 'Spielen Sie zuerst Ihre Hauptsicherung und anschließend die Sicherung(en) der Addon-Konfiguration(en) ein.<br />Es werden lediglich die gesicherten Konfigurationsdatei(en) der Addons, nicht die installierten Addons wiederhergestellt!<br />Achten Sie außerdem darauf, dass die Sicherungen ihre originalen Dateinamen behalten.', 'bad characters in' => 'Ungültige Zeichen in ', 'bad characters in script field' => 'Nicht erlaubte Zeichen im Skriptnamen', @@ -735,6 +739,8 @@ 'defaultwarning' => 'ACHTUNG - Ihre Einstellungen gehen hiermit verloren und werden durch die Standarteinstellungen ersetzt.', 'delete' => 'Löschen', 'delete cron' => 'Cronjob löschen', +'delete file' => 'Möchten Sie diese Datei wirklich löschen?', +'delete item' => 'Möchten Sie diesen Eintrag wirklich löschen?', 'delete pc' => 'PC löschen', 'delete share' => 'Freigabe löschen', 'delete user' => 'Benutzer löschen', @@ -1600,7 +1606,6 @@ 'logging' => 'Protokollierung', 'logging server' => 'Protokollierungsserver', 'loginlogout' => 'Login/Logout', -'logs' => 'Protokolldateien', 'loosedirectorychecking' => 'Loose directorychecking', 'low' => 'Niedrig', 'ls_dhcpd' => 'DHCP-Server:', @@ -2136,6 +2141,7 @@ 'restart' => 'Neustart', 'restart ovpn server' => 'OpenVPN-Server neu starten', 'restore' => 'Wiederherstellen', +'restoreaddon' => 'Wiederherstellen (Addon)', 'restore defaults' => 'Voreinstellungen wiederherstellen', 'restore hardware settings' => 'Hardwareeinstellungen wiederherstellen', 'restore settings' => 'Einstellungen wiederherstellen', diff --git a/langs/en/cgi-bin/en.pl b/langs/en/cgi-bin/en.pl index d86705772..a126b11ef 100644 --- a/langs/en/cgi-bin/en.pl +++ b/langs/en/cgi-bin/en.pl @@ -155,6 +155,7 @@ 'add xtaccess' => 'Add External Access', 'add-route' => 'Additional push route', 'added from dhcp lease list' => 'Added from DHCP lease list', +'addonbackup' => 'Backup', 'addons' => 'Addons', 'admin user password has been changed' => 'Admin user password has been changed.', 'admin users' => 'User with superuser rights', @@ -459,6 +460,7 @@ 'backup' => 'Backup', 'backup archive' => 'Backup File (.dat)', 'backup clear archive' => 'Clear Backup File (.gz)', +'backup config' => 'Configuration', 'backup config floppy' => 'Backup Configuration - Floppy Disk', 'backup configuration' => 'Backup Configuration:', 'backup erase key' => 'Erase key', @@ -486,6 +488,8 @@ 'backupaddon' => 'Addon Backup', 'backupprofile' => 'In case reconnection fails, switch to profile', 'backups' => 'backups', +'backups data' => 'IPF-Files', +'backups iso' => 'ISO-Files', 'backupwarning' => 'Import your main backup first and then the backup(s) of the addon configuration(s).<br />Only the backed up addon configuration file(s) will be restored, not the installed addons!<br />Also make sure that the backups keep their original file names.', 'bad characters in' => 'Bad characters in ', 'bad characters in script field' => 'Bad characters in script field', @@ -755,6 +759,8 @@ 'delete pc' => 'Delete workstation', 'delete share' => 'Delete share', 'delete user' => 'Delete user', +'delete file' => 'Do you really want to delete this file?', +'delete item' => 'Do you really want to delete this item?', 'demon login script' => 'Demon login script', 'deprecated fs warn' => 'Deprecated filesystem! Newer kernel drop the support. Backup and reformat!', 'description' => 'Description', @@ -1632,7 +1638,6 @@ 'logging' => 'Logging', 'logging server' => 'Logging Server', 'loginlogout' => 'Login/Logout', -'logs' => 'logs', 'loosedirectorychecking' => 'Loosedirectorychecking', 'low' => 'Low', 'ls_dhcpd' => 'DHCP Server:', @@ -2172,6 +2177,7 @@ 'restart' => 'Restart', 'restart ovpn server' => 'Restart OpenVPN server', 'restore' => 'Restore', +'restoreaddon' => 'Restore (Addon)', 'restore defaults' => 'Restore defaults', 'restore hardware settings' => 'Restore hardware settings', 'restore settings' => 'Reset Settings', diff --git a/langs/es/cgi-bin/es.pl b/langs/es/cgi-bin/es.pl index c9a7496bc..fa346233f 100644 --- a/langs/es/cgi-bin/es.pl +++ b/langs/es/cgi-bin/es.pl @@ -1149,7 +1149,6 @@ 'logging' => 'Conectando', 'logging server' => 'Servidor de conexión', 'loginlogout' => 'Login/Logout', -'logs' => 'registros', 'loosedirectorychecking' => 'Chequeo de loosedirectory', 'low' => 'Bajo', 'ls_dhcpd' => 'Servidor DHCP:', diff --git a/langs/fr/cgi-bin/fr.pl b/langs/fr/cgi-bin/fr.pl index 301109477..ea5985315 100644 --- a/langs/fr/cgi-bin/fr.pl +++ b/langs/fr/cgi-bin/fr.pl @@ -1633,7 +1633,6 @@ 'logging' => 'Connexion', 'logging server' => 'Serveur de connexion', 'loginlogout' => 'Connexion/Quitter', -'logs' => 'Journaux', 'loosedirectorychecking' => 'Echec de la vérification du répertoire', 'low' => 'Bas', 'ls_dhcpd' => 'Serveur DHCP :', diff --git a/langs/it/cgi-bin/it.pl b/langs/it/cgi-bin/it.pl index e82ecfd35..711b4bd4a 100644 --- a/langs/it/cgi-bin/it.pl +++ b/langs/it/cgi-bin/it.pl @@ -1408,7 +1408,6 @@ 'logging' => 'Logging', 'logging server' => 'Logging Server', 'loginlogout' => 'Login/Logout', -'logs' => 'Gestione Log', 'loosedirectorychecking' => 'Loosedirectorychecking', 'low' => 'Basso', 'ls_dhcpd' => 'DHCP Server:', diff --git a/langs/nl/cgi-bin/nl.pl b/langs/nl/cgi-bin/nl.pl index 55927839e..aea5e81b5 100644 --- a/langs/nl/cgi-bin/nl.pl +++ b/langs/nl/cgi-bin/nl.pl @@ -1390,7 +1390,6 @@ 'logging' => 'Logging', 'logging server' => 'Loggingserver', 'loginlogout' => 'Login/Logout', -'logs' => 'logs', 'loosedirectorychecking' => 'Loosedirectorychecking', 'low' => 'Laag', 'ls_dhcpd' => 'DHCP Server:', diff --git a/langs/pl/cgi-bin/pl.pl b/langs/pl/cgi-bin/pl.pl index 147db051c..604a834a7 100644 --- a/langs/pl/cgi-bin/pl.pl +++ b/langs/pl/cgi-bin/pl.pl @@ -1094,7 +1094,6 @@ 'logging' => 'Logowanie', 'logging server' => 'Serwer logowania', 'loginlogout' => 'Zalogowanie/wylogowanie', -'logs' => 'logi', 'loosedirectorychecking' => 'Loosedirectorychecking', 'low' => 'Niski', 'ls_dhcpd' => 'Serwer DHCP:', diff --git a/langs/ru/cgi-bin/ru.pl b/langs/ru/cgi-bin/ru.pl index 0d986135d..26ad6c338 100644 --- a/langs/ru/cgi-bin/ru.pl +++ b/langs/ru/cgi-bin/ru.pl @@ -1087,7 +1087,6 @@ 'logging' => 'Logging', 'logging server' => 'Сервер Логов', 'loginlogout' => 'Login/Logout', -'logs' => 'Логи', 'loosedirectorychecking' => 'Loosedirectorychecking', 'low' => 'Low', 'ls_dhcpd' => 'DHCP сервер:', diff --git a/langs/tr/cgi-bin/tr.pl b/langs/tr/cgi-bin/tr.pl index 36c4782d6..233de0995 100644 --- a/langs/tr/cgi-bin/tr.pl +++ b/langs/tr/cgi-bin/tr.pl @@ -1538,7 +1538,6 @@ 'logging' => 'Günlük', 'logging server' => 'Günlük Sunucusu', 'loginlogout' => 'Giriş/Çıkış', -'logs' => 'Günlükler', 'loosedirectorychecking' => 'Serbest Dizin Denetimi', 'low' => 'Düşük', 'ls_dhcpd' => 'DHCP Sunucusu:',