mirror of
https://github.com/webmin/webmin.git
synced 2026-03-21 17:10:32 +00:00
Compare commits
119 Commits
dev/cache-
...
dev/samba-
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
0457c1d1c0 | ||
|
|
59b944ebff | ||
|
|
2e63031e22 | ||
|
|
6137f285f2 | ||
|
|
04557f6e28 | ||
|
|
d7de842f45 | ||
|
|
ba1aa5a498 | ||
|
|
b70a697e66 | ||
|
|
c4c2c5c38e | ||
|
|
bbe7e78516 | ||
|
|
e40fc5568b | ||
|
|
71d94982df | ||
|
|
d48154d6a0 | ||
|
|
949f6fbf8d | ||
|
|
3c97fc5a32 | ||
|
|
4d4468e907 | ||
|
|
fc5a638e24 | ||
|
|
cf6a14b7a6 | ||
|
|
6ddde41728 | ||
|
|
5114308d0d | ||
|
|
2c325b1ee4 | ||
|
|
e087bb718c | ||
|
|
51bdd0d07e | ||
|
|
74fec8b171 | ||
|
|
9d360f1c24 | ||
|
|
148743894f | ||
|
|
6b935f980c | ||
|
|
e751836684 | ||
|
|
b9449c213b | ||
|
|
a3c9770d4f | ||
|
|
3c971dacc1 | ||
|
|
ac1a73c154 | ||
|
|
3a099fabec | ||
|
|
9a1e869a82 | ||
|
|
5c54c614e3 | ||
|
|
cbdc843500 | ||
|
|
82fbca20e4 | ||
|
|
ef7dbb1f77 | ||
|
|
4f15106fa9 | ||
|
|
96bfc34247 | ||
|
|
0289ceed5b | ||
|
|
4e54ce3f85 | ||
|
|
73b2322597 | ||
|
|
05c7b6c3a3 | ||
|
|
1bb70effea | ||
|
|
590c27d202 | ||
|
|
846dff2636 | ||
|
|
b339c76fc7 | ||
|
|
fbabecbe9e | ||
|
|
7706c0795e | ||
|
|
4be368c523 | ||
|
|
b268c1bb66 | ||
|
|
b2f18fb784 | ||
|
|
34e3b4c027 | ||
|
|
3c5edcf184 | ||
|
|
33f4d7a008 | ||
|
|
2d182a2eea | ||
|
|
7f06ccaf53 | ||
|
|
d8fa7f26af | ||
|
|
aa6edf6c55 | ||
|
|
4333435739 | ||
|
|
f01197df71 | ||
|
|
cb41eff450 | ||
|
|
352326f574 | ||
|
|
410fd07287 | ||
|
|
faededeb77 | ||
|
|
f0f8dc2850 | ||
|
|
184e8d627d | ||
|
|
fd2b7c1fc7 | ||
|
|
98192ca099 | ||
|
|
05a93a5e3d | ||
|
|
50a2820a97 | ||
|
|
87f2640ee3 | ||
|
|
4180e3d3ee | ||
|
|
b7d7ea5d8d | ||
|
|
4e09cf0b55 | ||
|
|
3f0ab3fb92 | ||
|
|
836647525a | ||
|
|
8b68eac561 | ||
|
|
0503299773 | ||
|
|
2e8000d191 | ||
|
|
65ffcea0db | ||
|
|
45845b8ca6 | ||
|
|
fead9b108d | ||
|
|
db1c9679ba | ||
|
|
d753fa7a8d | ||
|
|
f6d7e05b14 | ||
|
|
a9288423cc | ||
|
|
ac9e54afba | ||
|
|
f7cf6419d2 | ||
|
|
a9097cbb42 | ||
|
|
6f84ca1c9d | ||
|
|
dff70c3349 | ||
|
|
fe8f3f8494 | ||
|
|
f5f3510a59 | ||
|
|
1e375b4740 | ||
|
|
c573496914 | ||
|
|
73e731722d | ||
|
|
6186376b6b | ||
|
|
31e0151804 | ||
|
|
872ca66b07 | ||
|
|
088aba8cec | ||
|
|
99b8959559 | ||
|
|
94f23e63e7 | ||
|
|
7c449cf4a3 | ||
|
|
2db507e5e8 | ||
|
|
bdeb908df0 | ||
|
|
a133cdfdef | ||
|
|
fe2656acd8 | ||
|
|
64a44a667e | ||
|
|
59cef9a04f | ||
|
|
af629fe3cd | ||
|
|
80368e2a04 | ||
|
|
5237ae8ea2 | ||
|
|
54ad4f7f74 | ||
|
|
0dd94f5957 | ||
|
|
5b2b3f0790 | ||
|
|
ac05a0c43a | ||
|
|
710829c16a |
18
CHANGELOG.md
18
CHANGELOG.md
@@ -1,5 +1,23 @@
|
|||||||
## Changelog
|
## Changelog
|
||||||
|
|
||||||
|
#### 2.104 (October 12, 2023)
|
||||||
|
* Add support for numbered and bulleted lists in mail HTML editor
|
||||||
|
* Fix Webmin version display [#2023](https://github.com/webmin/webmin/issues/2023)
|
||||||
|
* Fix hostname detection on `systemd` systems to avoid excessive logging [#2020](https://github.com/webmin/webmin/issues/2020)
|
||||||
|
* Fix to check if UI library is loaded before using it [#2021](https://github.com/webmin/webmin/issues/2021)
|
||||||
|
|
||||||
|
#### 2.103 (October 08, 2023)
|
||||||
|
* Add support for hostname detection using `hostnamectl` command
|
||||||
|
* Add support for other ACME services
|
||||||
|
* Add ability to hide dotfiles in File Manager [#1578](https://github.com/webmin/authentic-theme/issues/1578)
|
||||||
|
* Add `xz`, `zstd` and plain `tar` support when creating archives in File Manager [#2009](https://github.com/webmin/webmin/issues/2009)
|
||||||
|
* Add support for English (United States) (military time) locale
|
||||||
|
* Fix to correctly switch key hash type with ACME services
|
||||||
|
* Fix bug when `backend` wasn't saved correctly in Fail2Ban module [#1992](https://github.com/webmin/webmin/issues/1992)
|
||||||
|
* Fix large files download in Upload and Download module
|
||||||
|
* Fix Google Authentication on RHEL systems derivatives
|
||||||
|
* Update the Authentic theme to the latest version with various fixes and improvements
|
||||||
|
|
||||||
#### 2.102 (August 23, 2023)
|
#### 2.102 (August 23, 2023)
|
||||||
* Add support for Amazon Linux 2023
|
* Add support for Amazon Linux 2023
|
||||||
* Fix a bug in Network Configuration module when parsing network size [sourceforge.net/discussion#55377]( https://sourceforge.net/p/webadmin/discussion/55377/thread/78e5aa05f3)
|
* Fix a bug in Network Configuration module when parsing network size [sourceforge.net/discussion#55377]( https://sourceforge.net/p/webadmin/discussion/55377/thread/78e5aa05f3)
|
||||||
|
|||||||
File diff suppressed because one or more lines are too long
@@ -1976,22 +1976,32 @@ if (!$file) {
|
|||||||
push(@{$dir->{'members'}}, { 'name' => 'file',
|
push(@{$dir->{'members'}}, { 'name' => 'file',
|
||||||
'values' => [ $file ] } );
|
'values' => [ $file ] } );
|
||||||
|
|
||||||
# Add slave IPs
|
# Allow transfer from slave IPs
|
||||||
if (@$slaves) {
|
my (@notify, @transfer);
|
||||||
|
foreach my $s (@$slaves) {
|
||||||
|
push(@notify, { 'name' => $s });
|
||||||
|
push(@transfer, { 'name' => $s });
|
||||||
|
}
|
||||||
|
if (@transfer) {
|
||||||
|
my $gat = &find("allow-transfer", $opts->{'members'});
|
||||||
|
if ($gat) {
|
||||||
|
push(@transfer, @{$gat->{'members'}});
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if (@notify) {
|
||||||
my $also = { 'name' => 'also-notify',
|
my $also = { 'name' => 'also-notify',
|
||||||
'type' => 1,
|
'type' => 1,
|
||||||
'members' => [ ] };
|
'members' => \@notify};
|
||||||
my $allow = { 'name' => 'allow-transfer',
|
push(@{$dir->{'members'}}, $also);
|
||||||
'type' => 1,
|
|
||||||
'members' => [ ] };
|
|
||||||
foreach my $s (@$slaves) {
|
|
||||||
push(@{$also->{'members'}}, { 'name' => $s });
|
|
||||||
push(@{$allow->{'members'}}, { 'name' => $s });
|
|
||||||
}
|
|
||||||
push(@{$dir->{'members'}}, $also, $allow);
|
|
||||||
push(@{$dir->{'members'}}, { 'name' => 'notify',
|
push(@{$dir->{'members'}}, { 'name' => 'notify',
|
||||||
'values' => [ 'yes' ] });
|
'values' => [ 'yes' ] });
|
||||||
}
|
}
|
||||||
|
if (@transfer) {
|
||||||
|
my $allow = { 'name' => 'allow-transfer',
|
||||||
|
'type' => 1,
|
||||||
|
'members' => \@transfer };
|
||||||
|
push(@{$dir->{'members'}}, $allow);
|
||||||
|
}
|
||||||
|
|
||||||
# Create the zone file, with records
|
# Create the zone file, with records
|
||||||
my $ZONE;
|
my $ZONE;
|
||||||
|
|||||||
@@ -5,7 +5,7 @@ use warnings;
|
|||||||
no warnings 'redefine';
|
no warnings 'redefine';
|
||||||
no warnings 'uninitialized';
|
no warnings 'uninitialized';
|
||||||
# Globals
|
# Globals
|
||||||
our (%access, %text);
|
our (%access, %text, $bind_version);
|
||||||
our $dnssec_dlv_zone;
|
our $dnssec_dlv_zone;
|
||||||
|
|
||||||
require './bind8-lib.pl';
|
require './bind8-lib.pl';
|
||||||
@@ -24,10 +24,12 @@ $tkeys ||= { 'members' => [ ] };
|
|||||||
print &ui_form_start("save_trusted.cgi", "post");
|
print &ui_form_start("save_trusted.cgi", "post");
|
||||||
print &ui_table_start($text{'trusted_header'}, undef, 2);
|
print &ui_table_start($text{'trusted_header'}, undef, 2);
|
||||||
|
|
||||||
# DNSSEC enabled?
|
if (&compare_version_numbers($bind_version, '<', '9.16.0')) {
|
||||||
print &choice_input($text{'trusted_dnssec'}, 'dnssec-enable', $mems,
|
# DNSSEC enabled?
|
||||||
$text{'yes'}, 'yes', $text{'no'}, 'no',
|
print &choice_input($text{'trusted_dnssec'}, 'dnssec-enable', $mems,
|
||||||
$text{'default'}, undef);
|
$text{'yes'}, 'yes', $text{'no'}, 'no',
|
||||||
|
$text{'default'}, undef);
|
||||||
|
}
|
||||||
if (&supports_dnssec_client() == 2) {
|
if (&supports_dnssec_client() == 2) {
|
||||||
print &choice_input($text{'trusted_validation'},
|
print &choice_input($text{'trusted_validation'},
|
||||||
'dnssec-validation', $mems,
|
'dnssec-validation', $mems,
|
||||||
|
|||||||
@@ -4,7 +4,7 @@ use strict;
|
|||||||
use warnings;
|
use warnings;
|
||||||
no warnings 'redefine';
|
no warnings 'redefine';
|
||||||
no warnings 'uninitialized';
|
no warnings 'uninitialized';
|
||||||
our (%access, %text, %in, %config);
|
our (%access, %text, %in, %config, $bind_version);
|
||||||
|
|
||||||
require './bind8-lib.pl';
|
require './bind8-lib.pl';
|
||||||
$access{'defaults'} || &error($text{'trusted_ecannot'});
|
$access{'defaults'} || &error($text{'trusted_ecannot'});
|
||||||
@@ -17,7 +17,9 @@ my $conf = $parent->{'members'};
|
|||||||
my $options = &find("options", $conf);
|
my $options = &find("options", $conf);
|
||||||
|
|
||||||
# DNSSEC enabled
|
# DNSSEC enabled
|
||||||
&save_choice("dnssec-enable", $options, 1);
|
if (&compare_version_numbers($bind_version, '<', '9.16.0')) {
|
||||||
|
&save_choice("dnssec-enable", $options, 1);
|
||||||
|
}
|
||||||
if (&supports_dnssec_client() == 2) {
|
if (&supports_dnssec_client() == 2) {
|
||||||
&save_choice("dnssec-validation", $options, 1);
|
&save_choice("dnssec-validation", $options, 1);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -19,6 +19,10 @@ while(@ARGV) {
|
|||||||
shift(@ARGV);
|
shift(@ARGV);
|
||||||
$createsig = 1;
|
$createsig = 1;
|
||||||
}
|
}
|
||||||
|
elsif ($ARGV[0] eq "--key") {
|
||||||
|
shift(@ARGV);
|
||||||
|
$keyname = shift(@ARGV);
|
||||||
|
}
|
||||||
elsif ($ARGV[0] eq "--exclude") {
|
elsif ($ARGV[0] eq "--exclude") {
|
||||||
shift(@ARGV);
|
shift(@ARGV);
|
||||||
push(@exclude, shift(@ARGV));
|
push(@exclude, shift(@ARGV));
|
||||||
@@ -98,7 +102,8 @@ if ($file =~ /^(.*)\.gz$/i) {
|
|||||||
}
|
}
|
||||||
if ($createsig) {
|
if ($createsig) {
|
||||||
system("rm -f $file-sig.asc");
|
system("rm -f $file-sig.asc");
|
||||||
system("gpg --armor --output $file-sig.asc --detach-sig $file");
|
system("gpg ".($keyname ? " --default-key $keyname" : "").
|
||||||
|
" --armor --output $file-sig.asc --detach-sig $file");
|
||||||
}
|
}
|
||||||
|
|
||||||
# read_file(file, &assoc, [&order], [lowercase])
|
# read_file(file, &assoc, [&order], [lowercase])
|
||||||
|
|||||||
@@ -216,6 +216,11 @@ return wantarray ? @rv : $rv[0];
|
|||||||
sub save_directive
|
sub save_directive
|
||||||
{
|
{
|
||||||
local ($conf, $name, $value, $sname, $svalue) = @_;
|
local ($conf, $name, $value, $sname, $svalue) = @_;
|
||||||
|
$newconf = [ grep { $_->{'file'} !~ /^\/usr\/share\/dovecot/ &&
|
||||||
|
$_->{'file'} !~ /^\/opt/ } @$conf ];
|
||||||
|
if (@$newconf) {
|
||||||
|
$conf = $newconf;
|
||||||
|
}
|
||||||
local $dir;
|
local $dir;
|
||||||
if (ref($name)) {
|
if (ref($name)) {
|
||||||
# Old directive given
|
# Old directive given
|
||||||
@@ -577,5 +582,4 @@ else {
|
|||||||
}
|
}
|
||||||
|
|
||||||
1;
|
1;
|
||||||
r
|
|
||||||
|
|
||||||
|
|||||||
@@ -1,4 +1,3 @@
|
|||||||
line2=System configuration,11
|
|
||||||
exports_file=Exported filesystems file,0
|
exports_file=Exported filesystems file,0
|
||||||
apply_cmd=Command to apply configuration,3,None
|
apply_cmd=Command to apply configuration,3,None
|
||||||
restart_command=Command to restart export server,0
|
restart_command=Command to restart export server,0
|
||||||
|
|||||||
@@ -51,9 +51,11 @@ print &ui_table_row($text{'jail_ignoreip'},
|
|||||||
my $backend = &find_value("backend", $jail);
|
my $backend = &find_value("backend", $jail);
|
||||||
print &ui_table_row($text{'jail_backend'},
|
print &ui_table_row($text{'jail_backend'},
|
||||||
&ui_select("backend", $backend || "auto",
|
&ui_select("backend", $backend || "auto",
|
||||||
[ [ "auto", $text{'jail_auto'} ],
|
[ [ "auto", $text{'jail_auto'} ],
|
||||||
[ "gamin", $text{'jail_gamin'} ],
|
[ "systemd", $text{'jail_systemd'} ],
|
||||||
[ "polling", $text{'jail_polling'} ] ]));
|
[ "polling", $text{'jail_polling'} ],
|
||||||
|
[ "gamin", $text{'jail_gamin'} ],
|
||||||
|
[ "pyinotify", $text{'jail_pyinotify'} ] ]));
|
||||||
|
|
||||||
# Email destination
|
# Email destination
|
||||||
my $destemail = &find_value("destemail", $jail);
|
my $destemail = &find_value("destemail", $jail);
|
||||||
|
|||||||
@@ -114,8 +114,10 @@ jail_efindtime=Delay between matches must be a number greater than zero
|
|||||||
jail_ebantime=Time to ban an IP must be a number greater than zero
|
jail_ebantime=Time to ban an IP must be a number greater than zero
|
||||||
jail_backend=Check for log file updates using
|
jail_backend=Check for log file updates using
|
||||||
jail_auto=Decide automatically
|
jail_auto=Decide automatically
|
||||||
jail_gamin=Gamin file alteration monitor
|
jail_systemd=systemd
|
||||||
jail_polling=Background polling
|
jail_polling=polling
|
||||||
|
jail_gamin=gamin
|
||||||
|
jail_pyinotify=pyinotify
|
||||||
jail_destemail=Default notification email
|
jail_destemail=Default notification email
|
||||||
jail_none=None set
|
jail_none=None set
|
||||||
jail_banaction=Default action to apply
|
jail_banaction=Default action to apply
|
||||||
|
|||||||
@@ -11,7 +11,19 @@ if(!$in{'arch'}) {
|
|||||||
|
|
||||||
my $command;
|
my $command;
|
||||||
|
|
||||||
if ($in{'method'} eq 'tar') {
|
if ($in{'method'} eq 'plain-tar') {
|
||||||
|
$full = "$cwd/$in{'arch'}.tar";
|
||||||
|
$command = "tar cf ".quotemeta($full)." -C ".quotemeta($cwd);
|
||||||
|
}
|
||||||
|
elsif ($in{'method'} eq 'xz-tar') {
|
||||||
|
$full = "$cwd/$in{'arch'}.tar.xz";
|
||||||
|
$command = "tar cJf ".quotemeta($full)." -C ".quotemeta($cwd);
|
||||||
|
}
|
||||||
|
elsif ($in{'method'} eq 'zstd-tar') {
|
||||||
|
$full = "$cwd/$in{'arch'}.zst";
|
||||||
|
$command = "ZSTD_CLEVEL=19 tar --zstd -cf ".quotemeta($full)." -C ".quotemeta($cwd);
|
||||||
|
}
|
||||||
|
elsif ($in{'method'} eq 'tar') {
|
||||||
$full = "$cwd/$in{'arch'}.tar.gz";
|
$full = "$cwd/$in{'arch'}.tar.gz";
|
||||||
$command = "tar czf ".quotemeta($full)." -C ".quotemeta($cwd);
|
$command = "tar czf ".quotemeta($full)." -C ".quotemeta($cwd);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -41,7 +41,8 @@ print &ui_table_row($text{'config_columns_to_display'},
|
|||||||
&ui_checkbox('columns', 'last_mod_time', $text{'last_mod_time'}, $config{'columns'} =~ /last_mod_time/)
|
&ui_checkbox('columns', 'last_mod_time', $text{'last_mod_time'}, $config{'columns'} =~ /last_mod_time/)
|
||||||
);
|
);
|
||||||
print &ui_table_row($text{'config_per_page'}, ui_textbox("per_page", $config{'per_page'}, 80));
|
print &ui_table_row($text{'config_per_page'}, ui_textbox("per_page", $config{'per_page'}, 80));
|
||||||
print &ui_table_row($text{'file_detect_encoding'}, &ui_yesno_radio('config_portable_module_filemanager_editor_detect_encoding', $config{'config_portable_module_filemanager_editor_detect_encoding'}, 'true', 'false'));
|
print &ui_table_row($text{'file_detect_encoding'}, &ui_yesno_radio('config_portable_module_filemanager_editor_detect_encoding', $config{'config_portable_module_filemanager_editor_detect_encoding'} ne 'false' ? 'true' : 'false', 'true', 'false'));
|
||||||
|
print &ui_table_row($text{'file_showhiddenfiles'}, &ui_yesno_radio('config_portable_module_filemanager_show_dot_files', $config{'config_portable_module_filemanager_show_dot_files'} ne 'false' ? 'true' : 'false', 'true', 'false'));
|
||||||
print &ui_table_row($text{'config_bookmarks'}, &ui_textarea("bookmarks", $bookmarks, 5, 40));
|
print &ui_table_row($text{'config_bookmarks'}, &ui_textarea("bookmarks", $bookmarks, 5, 40));
|
||||||
|
|
||||||
print &ui_table_end();
|
print &ui_table_end();
|
||||||
|
|||||||
@@ -1,2 +1,3 @@
|
|||||||
max=Maximum size for uploaded files,3,Unlimited
|
max=Maximum size for uploaded files,3,Unlimited
|
||||||
config_portable_module_filemanager_editor_detect_encoding=Fix to prevent encoding detection if forbidden,1,true-Yes,false-No
|
config_portable_module_filemanager_editor_detect_encoding=Fix to prevent encoding detection if forbidden,1,true-Yes,false-No
|
||||||
|
config_portable_module_filemanager_show_dot_files=Show hidden files,1,true-Yes,false-No
|
||||||
@@ -1,3 +1,4 @@
|
|||||||
columns=size,owner_user,permissions,last_mod_time
|
columns=size,owner_user,permissions,last_mod_time
|
||||||
per_page=50
|
per_page=50
|
||||||
config_portable_module_filemanager_editor_detect_encoding=true
|
config_portable_module_filemanager_editor_detect_encoding=true
|
||||||
|
config_portable_module_filemanager_show_dot_files=true
|
||||||
|
|||||||
@@ -12,7 +12,7 @@ if ($archive_type =~ /x-bzip/) {
|
|||||||
$cmd = "tar xvjfp ".quotemeta("$cwd/$in{'file'}").
|
$cmd = "tar xvjfp ".quotemeta("$cwd/$in{'file'}").
|
||||||
" -C ".quotemeta($cwd);
|
" -C ".quotemeta($cwd);
|
||||||
}
|
}
|
||||||
elsif ($archive_type =~ /x-tar|\/gzip|x-xz|x-compressed-tar/) {
|
elsif ($archive_type =~ /x-tar|\/gzip|x-xz|zstd|x-compressed-tar/) {
|
||||||
$cmd = "tar xfp ".quotemeta("$cwd/$in{'file'}").
|
$cmd = "tar xfp ".quotemeta("$cwd/$in{'file'}").
|
||||||
" -C ".quotemeta($cwd);
|
" -C ".quotemeta($cwd);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -397,6 +397,7 @@ sub print_interface {
|
|||||||
index($type, "-x-tar") != -1 ||
|
index($type, "-x-tar") != -1 ||
|
||||||
(index($type, "-x-bzip") != -1 && has_command('bzip2')) ||
|
(index($type, "-x-bzip") != -1 && has_command('bzip2')) ||
|
||||||
(index($type, "-gzip") != -1 && has_command('gzip')) ||
|
(index($type, "-gzip") != -1 && has_command('gzip')) ||
|
||||||
|
(index($type, "zstd") != -1 && has_command('zstd')) ||
|
||||||
(index($type, "-x-xz") != -1 && has_command('xz'))
|
(index($type, "-x-xz") != -1 && has_command('xz'))
|
||||||
) &&
|
) &&
|
||||||
has_command('tar')))
|
has_command('tar')))
|
||||||
|
|||||||
BIN
filemin/images/icons/mime/application-x-xz-compressed-tar.png
Normal file
BIN
filemin/images/icons/mime/application-x-xz-compressed-tar.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 764 B |
BIN
filemin/images/icons/mime/application-zstd.png
Normal file
BIN
filemin/images/icons/mime/application-zstd.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 764 B |
@@ -18,7 +18,8 @@ unless (opendir ( DIR, $cwd )) {
|
|||||||
my %secontext;
|
my %secontext;
|
||||||
|
|
||||||
# Push file names with full paths to array, filtering out "." and ".."
|
# Push file names with full paths to array, filtering out "." and ".."
|
||||||
@list = map { &simplify_path("$cwd/$_") } grep { $_ ne '.' && $_ ne '..' } readdir(DIR);
|
my $show_dot_files = $userconfig{'config_portable_module_filemanager_show_dot_files'} ne 'false';
|
||||||
|
@list = map { &simplify_path("$cwd/$_") } grep { $_ ne '.' && $_ ne '..' && ($show_dot_files || ($_ !~ /^\./ && $_ !~ /\/\./)) } readdir(DIR);
|
||||||
closedir(DIR);
|
closedir(DIR);
|
||||||
|
|
||||||
# Filter out not allowed paths
|
# Filter out not allowed paths
|
||||||
|
|||||||
@@ -173,6 +173,7 @@ acls_action=Action
|
|||||||
acls_manual=Manual params
|
acls_manual=Manual params
|
||||||
acls_error=<tt>setfacl</tt> command is not found on your system
|
acls_error=<tt>setfacl</tt> command is not found on your system
|
||||||
file_detect_encoding=Automatically detect file encoding
|
file_detect_encoding=Automatically detect file encoding
|
||||||
|
file_showhiddenfiles=Show hidden files
|
||||||
index_return=file listing
|
index_return=file listing
|
||||||
upload_dirs=Directory Upload
|
upload_dirs=Directory Upload
|
||||||
extract_uploaded=Extract Compressed
|
extract_uploaded=Extract Compressed
|
||||||
|
|||||||
@@ -13,6 +13,7 @@ $columns =~ s/\0/,/g;
|
|||||||
'columns' => $columns,
|
'columns' => $columns,
|
||||||
'per_page' => $in{'per_page'},
|
'per_page' => $in{'per_page'},
|
||||||
'config_portable_module_filemanager_editor_detect_encoding' => $in{'config_portable_module_filemanager_editor_detect_encoding'},
|
'config_portable_module_filemanager_editor_detect_encoding' => $in{'config_portable_module_filemanager_editor_detect_encoding'},
|
||||||
|
'config_portable_module_filemanager_show_dot_files' => $in{'config_portable_module_filemanager_show_dot_files'},
|
||||||
);
|
);
|
||||||
my $max_allowed = $in{'max_allowed'};
|
my $max_allowed = $in{'max_allowed'};
|
||||||
if($max_allowed) {
|
if($max_allowed) {
|
||||||
|
|||||||
@@ -102,7 +102,10 @@
|
|||||||
<input name="filename" type="text" class="form-control" data-placement="right" data-content="$text{'provide_file_name'}" data-trigger="manual">
|
<input name="filename" type="text" class="form-control" data-placement="right" data-content="$text{'provide_file_name'}" data-trigger="manual">
|
||||||
</div>
|
</div>
|
||||||
<select name="method">
|
<select name="method">
|
||||||
<option value="tar">.tar.gz</option>
|
<option value="plain-tar">.tar</option>
|
||||||
|
<option value="xz-tar">.tar.xz</option>
|
||||||
|
<option selected value="tar">.tar.gz</option>
|
||||||
|
<option value="zstd-tar">.zstd</option>
|
||||||
<option value="zip">.zip</option>
|
<option value="zip">.zip</option>
|
||||||
</select>
|
</select>
|
||||||
</form>
|
</form>
|
||||||
|
|||||||
@@ -39,7 +39,10 @@
|
|||||||
<label>$text{'archive_name'}</label>
|
<label>$text{'archive_name'}</label>
|
||||||
<input name="filename" type="text">
|
<input name="filename" type="text">
|
||||||
<select name="method">
|
<select name="method">
|
||||||
<option value="tar">.tar.gz</option>
|
<option value="plain-tar">.tar</option>
|
||||||
|
<option value="xz-tar">.tar.xz</option>
|
||||||
|
<option selected value="tar">.tar.gz</option>
|
||||||
|
<option value="zstd-tar">.zstd</option>
|
||||||
<option value="zip">.zip</option>
|
<option value="zip">.zip</option>
|
||||||
</select>
|
</select>
|
||||||
</div>
|
</div>
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
line0=Configurable global options,11
|
line0=Configurable global options,11
|
||||||
perpage=Number of rules to display per page,3,50
|
perpage=Number of rules to display per page,3,Default (50)
|
||||||
view_condition=Display condition in rules list?,1,1-Yes,0-No
|
view_condition=Display condition in rules list?,1,1-Yes,0-No
|
||||||
view_comment=Display comment in rules list?,1,1-Yes,0-No
|
view_comment=Display comment in rules list?,1,1-Yes,0-No
|
||||||
comment_mod=Store comments as,1,0-# comments in save file,1---comment option
|
comment_mod=Store comments as,1,0-# comments in save file,1---comment option
|
||||||
|
|||||||
@@ -225,25 +225,17 @@ else {
|
|||||||
print &ui_hidden("table", $in{'table'});
|
print &ui_hidden("table", $in{'table'});
|
||||||
print &ui_hidden("chain", $c);
|
print &ui_hidden("chain", $c);
|
||||||
|
|
||||||
if (@rules > $config{'perpage'}) {
|
my $pp = $config{'perpage'};
|
||||||
|
if (@rules > $pp) {
|
||||||
# Need to show arrows
|
# Need to show arrows
|
||||||
print "<center>\n";
|
|
||||||
$s = int($in{'start'});
|
$s = int($in{'start'});
|
||||||
$e = $in{'start'} + $config{'perpage'} - 1;
|
$e = $in{'start'} + $pp - 1;
|
||||||
$e = @rules-1 if ($e >= @rules);
|
$e = @rules-1 if ($e >= @rules);
|
||||||
if ($s) {
|
print &ui_page_flipper(
|
||||||
print &ui_link("?start=".
|
&text('index_position', $s+1, $e+1, scalar(@rules)),
|
||||||
($s - $config{'perpage'}),
|
undef, undef,
|
||||||
"<img src=/images/left.gif border=0 align=middle>");
|
$s ? "?start=".($s - $pp) : "",
|
||||||
}
|
$e < @rules-1 ? "?start=".($s + $pp) : "");
|
||||||
print "<font size=+1>",&text('index_position', $s+1, $e+1,
|
|
||||||
scalar(@rules)),"</font>\n";
|
|
||||||
if ($e < @rules-1) {
|
|
||||||
print &ui_link("?start=".
|
|
||||||
($s + $config{'perpage'}),
|
|
||||||
"<img src=/images/right.gif border=0 align=middle>");
|
|
||||||
}
|
|
||||||
print "</center>\n";
|
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
# Can show them all
|
# Can show them all
|
||||||
|
|||||||
@@ -1,6 +1,7 @@
|
|||||||
index_title=Linux IPTables Firewall
|
index_title=Linux IPTables Firewall
|
||||||
index_title_v=IPv4 Firewall
|
index_title_v=IPv4 Firewall
|
||||||
index_title_v6=IPv6 Firewall
|
index_title_v6=IPv6 Firewall
|
||||||
|
index_position=Showing rules $1 to $2 of $3
|
||||||
index_editing=rules file $1
|
index_editing=rules file $1
|
||||||
index_ecommand=The command $1 was not found on your system. Webmin needs this command to configure IPtables.
|
index_ecommand=The command $1 was not found on your system. Webmin needs this command to configure IPtables.
|
||||||
index_ekernel=An error occured when checking your current IPtables configuration : $1 This may indicate that your kernel does not support IPtables.
|
index_ekernel=An error occured when checking your current IPtables configuration : $1 This may indicate that your kernel does not support IPtables.
|
||||||
|
|||||||
@@ -96,6 +96,7 @@ if ($current_lang_info->{'rtl'} || $current_lang eq "ar") {
|
|||||||
# Page header
|
# Page header
|
||||||
print "<html>\n";
|
print "<html>\n";
|
||||||
print "<head>\n";
|
print "<head>\n";
|
||||||
|
print &ui_switch_theme_javascript();
|
||||||
print "<title>$title</title>\n";
|
print "<title>$title</title>\n";
|
||||||
my $imgdir = "@{[&get_webprefix()]}/images";
|
my $imgdir = "@{[&get_webprefix()]}/images";
|
||||||
my $prod = 'webmin';
|
my $prod = 'webmin';
|
||||||
|
|||||||
@@ -84,7 +84,7 @@ if (@has > 1) {
|
|||||||
}
|
}
|
||||||
print "</div>";
|
print "</div>";
|
||||||
}
|
}
|
||||||
|
print &ui_switch_theme_javascript();
|
||||||
print "<div class='wrapper leftmenu'>\n";
|
print "<div class='wrapper leftmenu'>\n";
|
||||||
print "<table id='main' width='100%'><tbody><tr><td>\n";
|
print "<table id='main' width='100%'><tbody><tr><td>\n";
|
||||||
|
|
||||||
|
|||||||
File diff suppressed because one or more lines are too long
@@ -22,6 +22,23 @@ our $ui_formcount;
|
|||||||
$main::WRAPPER_OPEN = 0;
|
$main::WRAPPER_OPEN = 0;
|
||||||
$main::COLUMNS_WRAPPER_OPEN = 0;
|
$main::COLUMNS_WRAPPER_OPEN = 0;
|
||||||
|
|
||||||
|
sub theme_ui_print_header
|
||||||
|
{
|
||||||
|
my ($text, @args) = @_;
|
||||||
|
&header(@args);
|
||||||
|
print <<EOL;
|
||||||
|
<script>
|
||||||
|
(function () {
|
||||||
|
const body = document.querySelector('body');
|
||||||
|
try {
|
||||||
|
body && body.classList.add('$module_name');
|
||||||
|
} catch (e) {}
|
||||||
|
})();
|
||||||
|
</script>
|
||||||
|
EOL
|
||||||
|
print &ui_post_header($text);
|
||||||
|
}
|
||||||
|
|
||||||
# theme_ui_post_header([subtext])
|
# theme_ui_post_header([subtext])
|
||||||
# Returns HTML to appear directly after a standard header() call
|
# Returns HTML to appear directly after a standard header() call
|
||||||
sub theme_ui_post_header
|
sub theme_ui_post_header
|
||||||
|
|||||||
@@ -697,4 +697,16 @@ body > .mode > b[data-mode="server-manager"] > a > .ff-cloudmin {
|
|||||||
}
|
}
|
||||||
.ql-compose-container .ql-snow .ql-tooltip {
|
.ql-compose-container .ql-snow .ql-tooltip {
|
||||||
z-index: 99;
|
z-index: 99;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/* Shell module tweaks */
|
||||||
|
.shell pre {
|
||||||
|
overflow-x: auto;
|
||||||
|
overflow-y: hidden;
|
||||||
|
}
|
||||||
|
.shell input[name="cmd"] {
|
||||||
|
max-width: 64.5vw;
|
||||||
|
}
|
||||||
|
.shell select[name="pcmd"] {
|
||||||
|
max-width: 65vw;
|
||||||
|
}
|
||||||
|
|||||||
@@ -277,24 +277,51 @@ my $html_editor_init_script =
|
|||||||
theme: 'snow'
|
theme: 'snow'
|
||||||
});
|
});
|
||||||
|
|
||||||
// Google Mail editor like keybind for quoting
|
// Google Mail like key bind for creating numbered list (Ctrl+Shift+7)
|
||||||
editor.keyboard.addBinding({
|
editor.keyboard.addBinding({
|
||||||
key: '9',
|
key: '7',
|
||||||
shiftKey: true,
|
shiftKey: true,
|
||||||
ctrlKey: !isMac,
|
ctrlKey: !isMac,
|
||||||
metaKey: isMac,
|
metaKey: isMac,
|
||||||
format: ['blockquote'],
|
|
||||||
}, function(range, context) {
|
}, function(range, context) {
|
||||||
this.quill.format('blockquote', false);
|
const currentFormat = this.quill.getFormat(range.index);
|
||||||
|
if (currentFormat.list === 'ordered') {
|
||||||
|
this.quill.format('list', false);
|
||||||
|
} else {
|
||||||
|
this.quill.format('list', 'ordered');
|
||||||
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
|
// Google Mail like key bind for creating bullet list (Ctrl+Shift+8)
|
||||||
editor.keyboard.addBinding({
|
editor.keyboard.addBinding({
|
||||||
key: '9',
|
key: '8',
|
||||||
shiftKey: true,
|
shiftKey: true,
|
||||||
ctrlKey: !isMac,
|
ctrlKey: !isMac,
|
||||||
metaKey: isMac,
|
metaKey: isMac,
|
||||||
}, function(range, context) {
|
}, function(range, context) {
|
||||||
this.quill.format('blockquote', true);
|
const currentFormat = this.quill.getFormat(range.index);
|
||||||
|
if (currentFormat.list === 'bullet') {
|
||||||
|
this.quill.format('list', false);
|
||||||
|
} else {
|
||||||
|
this.quill.format('list', 'bullet');
|
||||||
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
|
// Google Mail like key bind for creating blockquote (Ctrl+Shift+9)
|
||||||
|
editor.keyboard.addBinding({
|
||||||
|
key: '9',
|
||||||
|
shiftKey: true,
|
||||||
|
ctrlKey: !isMac,
|
||||||
|
metaKey: isMac,
|
||||||
|
}, function(range, context) {
|
||||||
|
const currentFormat = this.quill.getFormat(range.index);
|
||||||
|
if (currentFormat.blockquote) {
|
||||||
|
this.quill.format('blockquote', false);
|
||||||
|
} else {
|
||||||
|
this.quill.format('blockquote', true);
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
editor.on('text-change', function() {
|
editor.on('text-change', function() {
|
||||||
// This should most probably go to onSubmit event
|
// This should most probably go to onSubmit event
|
||||||
targ.value = editor.root.innerHTML + "<br>";
|
targ.value = editor.root.innerHTML + "<br>";
|
||||||
|
|||||||
@@ -2459,10 +2459,8 @@ my $systemd_local_conf = "/etc/systemd/system";
|
|||||||
my $systemd_unit_dir1 = "/usr/lib/systemd/system";
|
my $systemd_unit_dir1 = "/usr/lib/systemd/system";
|
||||||
my $systemd_unit_dir2 = "/lib/systemd/system";
|
my $systemd_unit_dir2 = "/lib/systemd/system";
|
||||||
if ($name) {
|
if ($name) {
|
||||||
foreach my $p (
|
foreach my $p ($systemd_local_conf, $systemd_unit_dir1,
|
||||||
$systemd_local_conf,
|
$systemd_unit_dir2) {
|
||||||
$systemd_unit_dir1,
|
|
||||||
$systemd_unit_dir2) {
|
|
||||||
if (-r "$p/$name.service" ||
|
if (-r "$p/$name.service" ||
|
||||||
-r "$p/$name" ||
|
-r "$p/$name" ||
|
||||||
-r "$p/$name.target" ||
|
-r "$p/$name.target" ||
|
||||||
|
|||||||
@@ -983,7 +983,7 @@ elsif ($mode == 3) {
|
|||||||
{ 'headers' => [ [ 'Content-type', 'application/zip' ],
|
{ 'headers' => [ [ 'Content-type', 'application/zip' ],
|
||||||
[ 'Content-Transfer-Encoding', 'base64' ] ],
|
[ 'Content-Transfer-Encoding', 'base64' ] ],
|
||||||
'data' => $data } ] };
|
'data' => $data } ] };
|
||||||
$main::errors_must_die = 1;
|
$main::error_must_die = 1;
|
||||||
if (&foreign_check("mailboxes")) {
|
if (&foreign_check("mailboxes")) {
|
||||||
&foreign_require("mailboxes", "mailboxes-lib.pl");
|
&foreign_require("mailboxes", "mailboxes-lib.pl");
|
||||||
eval { &mailboxes::send_mail($mail); };
|
eval { &mailboxes::send_mail($mail); };
|
||||||
|
|||||||
@@ -111,7 +111,7 @@ elsif ($mode == 3) {
|
|||||||
'data' => $body },
|
'data' => $body },
|
||||||
{ 'headers' => [ [ 'Content-type', 'text/plain' ] ],
|
{ 'headers' => [ [ 'Content-type', 'text/plain' ] ],
|
||||||
'data' => $data } ] };
|
'data' => $data } ] };
|
||||||
$main::errors_must_die = 1;
|
$main::error_must_die = 1;
|
||||||
if (&foreign_check("mailboxes")) {
|
if (&foreign_check("mailboxes")) {
|
||||||
&foreign_require("mailboxes", "mailboxes-lib.pl");
|
&foreign_require("mailboxes", "mailboxes-lib.pl");
|
||||||
eval { &mailboxes::send_mail($mail); };
|
eval { &mailboxes::send_mail($mail); };
|
||||||
|
|||||||
2
lang/en
2
lang/en
@@ -392,4 +392,6 @@ file_truncated_message_tail=fetched ending $1 of data, truncated $2 out of $3
|
|||||||
|
|
||||||
defcert_error=Default $1 bundled SSL certificate is being used. It is highly advised to update default <tt>$2</tt> certificate before proceeding with login.
|
defcert_error=Default $1 bundled SSL certificate is being used. It is highly advised to update default <tt>$2</tt> certificate before proceeding with login.
|
||||||
|
|
||||||
|
main_error_details=Error details
|
||||||
|
|
||||||
__norefs=1
|
__norefs=1
|
||||||
|
|||||||
@@ -3006,6 +3006,44 @@ if ($switched) {
|
|||||||
return $rv;
|
return $rv;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
# is_gzipped_file(file)
|
||||||
|
# Returns 1 if a file is gzip compressed
|
||||||
|
sub is_gzipped_file
|
||||||
|
{
|
||||||
|
my ($file) = @_;
|
||||||
|
my $fh;
|
||||||
|
my $rv = open($fh, "<", $file);
|
||||||
|
return 0 if (!$rv);
|
||||||
|
my $two;
|
||||||
|
read($fh, $two, 2);
|
||||||
|
close($fh);
|
||||||
|
return $two eq "\037\213" ? 1 : 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
# gunzip_mail_file(file)
|
||||||
|
# Uncompress a mail file in place
|
||||||
|
sub gunzip_mail_file
|
||||||
|
{
|
||||||
|
my ($file) = @_;
|
||||||
|
my $switched = &switch_to_mail_user();
|
||||||
|
my $outfile = $file.".$$.uncompressed";
|
||||||
|
my @st = stat($file);
|
||||||
|
my $ex = system("gunzip -c ".quotemeta($file)."> ".quotemeta($outfile)." 2>/dev/null");
|
||||||
|
if ($ex) {
|
||||||
|
unlink($outfile);
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
rename($outfile, $file);
|
||||||
|
&set_ownership_permissions($st[4], $st[5], $st[2], $file);
|
||||||
|
utime($st[8], $st[9], $file);
|
||||||
|
}
|
||||||
|
if ($switched) {
|
||||||
|
$) = 0;
|
||||||
|
$> = 0;
|
||||||
|
}
|
||||||
|
return !$ex;
|
||||||
|
}
|
||||||
|
|
||||||
# create_as_mail_user(fh, file)
|
# create_as_mail_user(fh, file)
|
||||||
# Creates a new file, but ensures that it does not yet exist first, and then
|
# Creates a new file, but ensures that it does not yet exist first, and then
|
||||||
# sets the ownership to the mail user
|
# sets the ownership to the mail user
|
||||||
|
|||||||
@@ -1543,6 +1543,33 @@ if ($src->{'sortable'}) {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
# mailbox_uncompress_folder(&folder)
|
||||||
|
# If a folder or it's files are gzipped, uncompress them in place
|
||||||
|
sub mailbox_uncompress_folder
|
||||||
|
{
|
||||||
|
my ($folder) = @_;
|
||||||
|
if ($folder->{'type'} == 1 || $folder->{'type'} == 3) {
|
||||||
|
my @files = $folder->{'type'} == 1 ?
|
||||||
|
&get_maildir_files($folder->{'file'}) :
|
||||||
|
&get_mhdir_files($folder->{'file'});
|
||||||
|
if ($folder->{'type'} == 1) {
|
||||||
|
foreach my $sf (glob("$folder->{'file'}/.??*")) {
|
||||||
|
push(@files, &get_maildir_files($sf));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
foreach my $f (@files) {
|
||||||
|
if (&is_gzipped_file($f)) {
|
||||||
|
&gunzip_mail_file($f);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
elsif ($folder->{'type'} == 0) {
|
||||||
|
if (&is_gzipped_file($folder->{'file'})) {
|
||||||
|
&gunzip_mail_file($folder->{'file'});
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
# mailbox_copy_mail(&source, &dest, mail, ...)
|
# mailbox_copy_mail(&source, &dest, mail, ...)
|
||||||
# Copy mail from one folder to another
|
# Copy mail from one folder to another
|
||||||
sub mailbox_copy_mail
|
sub mailbox_copy_mail
|
||||||
@@ -3366,7 +3393,10 @@ local $dmail = {
|
|||||||
[ 'Content-Transfer-Encoding' => '7bit' ] ],
|
[ 'Content-Transfer-Encoding' => '7bit' ] ],
|
||||||
'data' => $dsn }
|
'data' => $dsn }
|
||||||
] };
|
] };
|
||||||
eval { local $main::errors_must_die = 1; &send_mail($dmail); };
|
eval {
|
||||||
|
local $main::error_must_die = 1;
|
||||||
|
&send_mail($dmail);
|
||||||
|
};
|
||||||
return $to;
|
return $to;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -320,7 +320,7 @@ search_elatest=Ontbrekende of ongeldige aantal boodskappe om te soek
|
|||||||
search_withstatus=, met status $1
|
search_withstatus=, met status $1
|
||||||
|
|
||||||
folder_inbox=posbus
|
folder_inbox=posbus
|
||||||
folder_sent=Gestuurde pos
|
folder_sent=Gestuur
|
||||||
folder_drafts=Drafts
|
folder_drafts=Drafts
|
||||||
folder_trash=asblik
|
folder_trash=asblik
|
||||||
|
|
||||||
|
|||||||
@@ -320,7 +320,7 @@ search_elatest=عدد الرسائل المفقودة أو غير الصحيحة
|
|||||||
search_withstatus=, with status $1
|
search_withstatus=, with status $1
|
||||||
|
|
||||||
folder_inbox=صندوق الوارد
|
folder_inbox=صندوق الوارد
|
||||||
folder_sent=البريد المرسل
|
folder_sent=مرسل
|
||||||
folder_drafts=المسودات
|
folder_drafts=المسودات
|
||||||
folder_trash=قمامة، يدمر، يهدم
|
folder_trash=قمامة، يدمر، يهدم
|
||||||
|
|
||||||
|
|||||||
@@ -320,7 +320,7 @@ search_elatest=Адсутнічае альбо недапушчальная ко
|
|||||||
search_withstatus=, са статусам $1
|
search_withstatus=, са статусам $1
|
||||||
|
|
||||||
folder_inbox=Уваходныя
|
folder_inbox=Уваходныя
|
||||||
folder_sent=Даслана пошта
|
folder_sent=Адпраўлена
|
||||||
folder_drafts=Чарнавікі
|
folder_drafts=Чарнавікі
|
||||||
folder_trash=Хлам
|
folder_trash=Хлам
|
||||||
|
|
||||||
|
|||||||
@@ -320,7 +320,7 @@ search_elatest=Липсващ или невалиден брой съобщен
|
|||||||
search_withstatus=, със статус $1
|
search_withstatus=, със статус $1
|
||||||
|
|
||||||
folder_inbox=Входящи
|
folder_inbox=Входящи
|
||||||
folder_sent=Изпратена поща
|
folder_sent=Изпратено
|
||||||
folder_drafts=дама
|
folder_drafts=дама
|
||||||
folder_trash=боклук
|
folder_trash=боклук
|
||||||
|
|
||||||
|
|||||||
@@ -319,7 +319,6 @@ search_elatest=Hi falta el nombre de missatges a buscar o bé és invàlid
|
|||||||
search_withstatus=, amb estat $1
|
search_withstatus=, amb estat $1
|
||||||
|
|
||||||
folder_inbox=Entrada
|
folder_inbox=Entrada
|
||||||
folder_sent=Enviat
|
|
||||||
folder_drafts=Drafts
|
folder_drafts=Drafts
|
||||||
folder_trash=Trash
|
folder_trash=Trash
|
||||||
|
|
||||||
|
|||||||
@@ -1,5 +1,7 @@
|
|||||||
index_return=llista d'usuaris
|
index_return=llista d'usuaris
|
||||||
|
|
||||||
|
folder_sent=Enviat
|
||||||
|
|
||||||
editor_heading=Encapçalament
|
editor_heading=Encapçalament
|
||||||
editor_paragraph=Paràgraf
|
editor_paragraph=Paràgraf
|
||||||
editor_fontfamily_default=Per defecte
|
editor_fontfamily_default=Per defecte
|
||||||
|
|||||||
@@ -295,7 +295,6 @@ search_elatest=Chybějící nebo nevhodný počet zpráv k prohledání
|
|||||||
search_withstatus=, se stavem $1
|
search_withstatus=, se stavem $1
|
||||||
|
|
||||||
folder_inbox=Doručená pošta
|
folder_inbox=Doručená pošta
|
||||||
folder_sent=Odesláné pošta
|
|
||||||
folder_drafts=Koncepty
|
folder_drafts=Koncepty
|
||||||
folder_trash=Koš
|
folder_trash=Koš
|
||||||
|
|
||||||
|
|||||||
@@ -29,6 +29,8 @@ reply_html1=Vytvořte HTML
|
|||||||
search_msg6=Výsledky hledání $1 v poli $2
|
search_msg6=Výsledky hledání $1 v poli $2
|
||||||
search_attach=Musí mít přílohy?
|
search_attach=Musí mít přílohy?
|
||||||
|
|
||||||
|
folder_sent=Odesláno
|
||||||
|
|
||||||
left_mail=Pošta
|
left_mail=Pošta
|
||||||
left_search=Vyhledávání:
|
left_search=Vyhledávání:
|
||||||
left_folders=Správa složek
|
left_folders=Správa složek
|
||||||
|
|||||||
@@ -320,7 +320,7 @@ search_elatest=Manglende eller ugyldigt antal meddelelser til søgning
|
|||||||
search_withstatus=, med status $1
|
search_withstatus=, med status $1
|
||||||
|
|
||||||
folder_inbox=Indbakke
|
folder_inbox=Indbakke
|
||||||
folder_sent=Sendt post
|
folder_sent=Sendt
|
||||||
folder_drafts=Kladder
|
folder_drafts=Kladder
|
||||||
folder_trash=Affald
|
folder_trash=Affald
|
||||||
|
|
||||||
|
|||||||
@@ -319,7 +319,6 @@ search_elatest=Fehlende oder ungültige Anzahl an Mails für die Suche
|
|||||||
search_withstatus=, mit Status $1
|
search_withstatus=, mit Status $1
|
||||||
|
|
||||||
folder_inbox=Posteingang
|
folder_inbox=Posteingang
|
||||||
folder_sent=Versendete Mail
|
|
||||||
folder_drafts=Entwürfe
|
folder_drafts=Entwürfe
|
||||||
folder_trash=Papierkorb
|
folder_trash=Papierkorb
|
||||||
|
|
||||||
|
|||||||
@@ -1,5 +1,7 @@
|
|||||||
index_return=Benutzerliste
|
index_return=Benutzerliste
|
||||||
|
|
||||||
|
folder_sent=Gesendet
|
||||||
|
|
||||||
editor_heading=Überschrift
|
editor_heading=Überschrift
|
||||||
editor_paragraph=Absatz
|
editor_paragraph=Absatz
|
||||||
editor_fontfamily_default=Standard
|
editor_fontfamily_default=Standard
|
||||||
|
|||||||
@@ -268,7 +268,6 @@ search_elatest=Λείπει ή είναι άκυρος ο αριθμός των
|
|||||||
search_withstatus=, με κατάσταση $1
|
search_withstatus=, με κατάσταση $1
|
||||||
|
|
||||||
folder_inbox=Εισερχόμενα
|
folder_inbox=Εισερχόμενα
|
||||||
folder_sent=Απεσταλμένα
|
|
||||||
folder_drafts=Πρόχειρα
|
folder_drafts=Πρόχειρα
|
||||||
folder_trash=Απορρίματα
|
folder_trash=Απορρίματα
|
||||||
|
|
||||||
|
|||||||
@@ -60,6 +60,8 @@ confirm_warnallf=Είστε βέβαιοι ότι θέλετε να διαγρά
|
|||||||
search_msg6=Αποτελέσματα αναζήτησης για $1 στο πεδίο $2
|
search_msg6=Αποτελέσματα αναζήτησης για $1 στο πεδίο $2
|
||||||
search_attach=Πρέπει να έχετε συνημμένα;
|
search_attach=Πρέπει να έχετε συνημμένα;
|
||||||
|
|
||||||
|
folder_sent=Απεσταλμένα
|
||||||
|
|
||||||
sform_header=Προηγμένες επιλογές αναζήτησης ηλεκτρονικού ταχυδρομείου
|
sform_header=Προηγμένες επιλογές αναζήτησης ηλεκτρονικού ταχυδρομείου
|
||||||
sform_andmode=Λειτουργία κριτηρίων
|
sform_andmode=Λειτουργία κριτηρίων
|
||||||
sform_folder2=Αναζήτηση σε φάκελο (-ες)
|
sform_folder2=Αναζήτηση σε φάκελο (-ες)
|
||||||
|
|||||||
@@ -320,7 +320,7 @@ search_elatest=Missing or invalid number of messages to search
|
|||||||
search_withstatus=, with status $1
|
search_withstatus=, with status $1
|
||||||
|
|
||||||
folder_inbox=Inbox
|
folder_inbox=Inbox
|
||||||
folder_sent=Sent mail
|
folder_sent=Sent
|
||||||
folder_drafts=Drafts
|
folder_drafts=Drafts
|
||||||
folder_trash=Trash
|
folder_trash=Trash
|
||||||
|
|
||||||
|
|||||||
@@ -238,7 +238,7 @@ search_elatest=Número de mensajes faltantes o no válidos para buscar
|
|||||||
search_withstatus=, con estado $1
|
search_withstatus=, con estado $1
|
||||||
|
|
||||||
folder_inbox=Bandeja de entrada
|
folder_inbox=Bandeja de entrada
|
||||||
folder_sent=Correo enviado
|
folder_sent=Enviado
|
||||||
folder_drafts=Borradores
|
folder_drafts=Borradores
|
||||||
folder_trash=Basura
|
folder_trash=Basura
|
||||||
|
|
||||||
|
|||||||
@@ -320,7 +320,7 @@ search_elatest=Bilatu beharreko mezu kopuru falta edo baliogabea
|
|||||||
search_withstatus=, egoera $1 egoerarekin
|
search_withstatus=, egoera $1 egoerarekin
|
||||||
|
|
||||||
folder_inbox=Sarrerako ontzia
|
folder_inbox=Sarrerako ontzia
|
||||||
folder_sent=Bidalitako mezuak
|
folder_sent=Bidali
|
||||||
folder_drafts=Turkiarrak
|
folder_drafts=Turkiarrak
|
||||||
folder_trash=Trash
|
folder_trash=Trash
|
||||||
|
|
||||||
|
|||||||
@@ -320,7 +320,7 @@ search_elatest=تعداد پیام های نامعتبر یا نامعتبر ا
|
|||||||
search_withstatus=, with status $1
|
search_withstatus=, with status $1
|
||||||
|
|
||||||
folder_inbox=صندوق ورودی
|
folder_inbox=صندوق ورودی
|
||||||
folder_sent=نامه ارسال شده
|
folder_sent=ارسال شد
|
||||||
folder_drafts=پیش نویس
|
folder_drafts=پیش نویس
|
||||||
folder_trash=زباله ها
|
folder_trash=زباله ها
|
||||||
|
|
||||||
|
|||||||
@@ -205,7 +205,6 @@ search_nolatest=Kaikki kansiossa
|
|||||||
search_latestnum=Vain viimeisimmät
|
search_latestnum=Vain viimeisimmät
|
||||||
search_elatest=Puuttuva tai virheellinen määrä etsittäviä viestejä
|
search_elatest=Puuttuva tai virheellinen määrä etsittäviä viestejä
|
||||||
|
|
||||||
folder_sent=Lähetetyt
|
|
||||||
folder_drafts=Luonnokset
|
folder_drafts=Luonnokset
|
||||||
folder_trash=Roskakori
|
folder_trash=Roskakori
|
||||||
|
|
||||||
|
|||||||
@@ -125,6 +125,7 @@ search_onestatus=Vain tila
|
|||||||
search_withstatus=, tila $1
|
search_withstatus=, tila $1
|
||||||
|
|
||||||
folder_inbox=Saapuneet
|
folder_inbox=Saapuneet
|
||||||
|
folder_sent=Lähetetty
|
||||||
|
|
||||||
detach_err=Tiedoston irrottaminen epäonnistui
|
detach_err=Tiedoston irrottaminen epäonnistui
|
||||||
detach_edir=Ei tiedostoa tai hakemistoa tallennettavaksi syötettyyn
|
detach_edir=Ei tiedostoa tai hakemistoa tallennettavaksi syötettyyn
|
||||||
|
|||||||
@@ -320,7 +320,6 @@ search_elatest=nombre de messages à rechercher manquant ou invalide
|
|||||||
search_withstatus=, avec statut $1
|
search_withstatus=, avec statut $1
|
||||||
|
|
||||||
folder_inbox=Boite de Réception
|
folder_inbox=Boite de Réception
|
||||||
folder_sent=Courriers Envoyés
|
|
||||||
folder_drafts=Brouillons
|
folder_drafts=Brouillons
|
||||||
folder_trash=Corbeille
|
folder_trash=Corbeille
|
||||||
|
|
||||||
|
|||||||
@@ -1,3 +1,5 @@
|
|||||||
|
folder_sent=Envoyé
|
||||||
|
|
||||||
editor_heading=Titre
|
editor_heading=Titre
|
||||||
editor_paragraph=Paragraphe
|
editor_paragraph=Paragraphe
|
||||||
editor_fontfamily_default=Défaut
|
editor_fontfamily_default=Défaut
|
||||||
|
|||||||
@@ -320,7 +320,7 @@ search_elatest=מספר הודעות חסר או לא חוקי לחיפוש
|
|||||||
search_withstatus=, with status $1
|
search_withstatus=, with status $1
|
||||||
|
|
||||||
folder_inbox=תיבת הדואר הנכנס
|
folder_inbox=תיבת הדואר הנכנס
|
||||||
folder_sent=שלח מייל
|
folder_sent=נשלח
|
||||||
folder_drafts=טיוטות
|
folder_drafts=טיוטות
|
||||||
folder_trash=זבל
|
folder_trash=זבל
|
||||||
|
|
||||||
|
|||||||
@@ -320,7 +320,7 @@ search_elatest=Nedostaje ili nevažeći broj poruka za pretraživanje
|
|||||||
search_withstatus=, sa statusom $1
|
search_withstatus=, sa statusom $1
|
||||||
|
|
||||||
folder_inbox=Ulazni spremnik
|
folder_inbox=Ulazni spremnik
|
||||||
folder_sent=Poslana pošta
|
folder_sent=Poslano
|
||||||
folder_drafts=nacrti
|
folder_drafts=nacrti
|
||||||
folder_trash=Otpad
|
folder_trash=Otpad
|
||||||
|
|
||||||
|
|||||||
@@ -147,7 +147,6 @@ search_attach=Szeretne csatolmányokat?
|
|||||||
search_allstatus=Minden
|
search_allstatus=Minden
|
||||||
|
|
||||||
folder_inbox=Bejövő levelek
|
folder_inbox=Bejövő levelek
|
||||||
folder_sent=Elküldött levelek
|
|
||||||
folder_drafts=Piszkozatok
|
folder_drafts=Piszkozatok
|
||||||
folder_trash=Kuka
|
folder_trash=Kuka
|
||||||
|
|
||||||
|
|||||||
@@ -181,6 +181,8 @@ search_latestnum=Csak a legújabb
|
|||||||
search_elatest=Hiányzik vagy érvénytelen a keresett üzenetek száma
|
search_elatest=Hiányzik vagy érvénytelen a keresett üzenetek száma
|
||||||
search_withstatus=, állapotával $1
|
search_withstatus=, állapotával $1
|
||||||
|
|
||||||
|
folder_sent=Küldött
|
||||||
|
|
||||||
detach_err=A fájl leválasztása nem sikerült
|
detach_err=A fájl leválasztása nem sikerült
|
||||||
detach_edir=Nincs fájl vagy könyvtár, amelyet menteni kellene a megadott fájlba
|
detach_edir=Nincs fájl vagy könyvtár, amelyet menteni kellene a megadott fájlba
|
||||||
detach_eopen=A $1 megnyitása nem sikerült : $2
|
detach_eopen=A $1 megnyitása nem sikerült : $2
|
||||||
|
|||||||
@@ -316,7 +316,6 @@ search_elatest=Numero di messaggi da cercare mancante o non valido
|
|||||||
search_withstatus=, con stato $1
|
search_withstatus=, con stato $1
|
||||||
|
|
||||||
folder_inbox=Posta in arrivo
|
folder_inbox=Posta in arrivo
|
||||||
folder_sent=Posta inviata
|
|
||||||
folder_drafts=Bozze
|
folder_drafts=Bozze
|
||||||
folder_trash=Cestino
|
folder_trash=Cestino
|
||||||
|
|
||||||
|
|||||||
@@ -6,6 +6,8 @@ view_nobody=Questo messaggio non ha contenuti del corpo.
|
|||||||
|
|
||||||
search_msg6=Risultati della ricerca per $1 nel campo $2
|
search_msg6=Risultati della ricerca per $1 nel campo $2
|
||||||
|
|
||||||
|
folder_sent=Inviato
|
||||||
|
|
||||||
left_mail=posta
|
left_mail=posta
|
||||||
left_search=Ricerca:
|
left_search=Ricerca:
|
||||||
left_folders=Gestisci cartelle
|
left_folders=Gestisci cartelle
|
||||||
|
|||||||
@@ -295,7 +295,6 @@ search_elatest=Missing or invalid number of messages to search
|
|||||||
search_withstatus=, with status $1
|
search_withstatus=, with status $1
|
||||||
|
|
||||||
folder_inbox=Inbox
|
folder_inbox=Inbox
|
||||||
folder_sent=Sent mail
|
|
||||||
folder_drafts=Drafts
|
folder_drafts=Drafts
|
||||||
folder_trash=Trash
|
folder_trash=Trash
|
||||||
|
|
||||||
|
|||||||
@@ -29,6 +29,8 @@ reply_html1=HTMLを作成
|
|||||||
search_msg6=$2フィールドの$1の検索結果
|
search_msg6=$2フィールドの$1の検索結果
|
||||||
search_attach=添付ファイルが必要ですか?
|
search_attach=添付ファイルが必要ですか?
|
||||||
|
|
||||||
|
folder_sent=送信済み
|
||||||
|
|
||||||
left_mail=郵便物
|
left_mail=郵便物
|
||||||
left_search=探す:
|
left_search=探す:
|
||||||
left_folders=フォルダーを管理する
|
left_folders=フォルダーを管理する
|
||||||
|
|||||||
@@ -285,7 +285,6 @@ search_elatest=검색 메시지수가 지정되지 않았거나 유효하지 않
|
|||||||
search_withstatus=, 상태 $1로
|
search_withstatus=, 상태 $1로
|
||||||
|
|
||||||
folder_inbox=인박스
|
folder_inbox=인박스
|
||||||
folder_sent=메일 보내기
|
|
||||||
folder_drafts=초안
|
folder_drafts=초안
|
||||||
folder_trash=휴지통
|
folder_trash=휴지통
|
||||||
|
|
||||||
|
|||||||
@@ -40,6 +40,8 @@ search_ewhat=입력 된 행과 일치하는 텍스트가 없습니다 $1
|
|||||||
search_msg6=$2 필드에서 $1에 대한 검색 결과
|
search_msg6=$2 필드에서 $1에 대한 검색 결과
|
||||||
search_attach=첨부 파일이 있어야합니까?
|
search_attach=첨부 파일이 있어야합니까?
|
||||||
|
|
||||||
|
folder_sent=전송된
|
||||||
|
|
||||||
sform_andmode=기준 모드
|
sform_andmode=기준 모드
|
||||||
|
|
||||||
left_mail=우편
|
left_mail=우편
|
||||||
|
|||||||
@@ -320,7 +320,7 @@ search_elatest=Trūksta arba netinkamas ieškomų pranešimų skaičius
|
|||||||
search_withstatus=, su būsena $1
|
search_withstatus=, su būsena $1
|
||||||
|
|
||||||
folder_inbox=Pašto dėžutę
|
folder_inbox=Pašto dėžutę
|
||||||
folder_sent=Išsiųsti laiškai
|
folder_sent=Išsiųsta
|
||||||
folder_drafts=Juodraščiai
|
folder_drafts=Juodraščiai
|
||||||
folder_trash=Šiukšlių dėžė
|
folder_trash=Šiukšlių dėžė
|
||||||
|
|
||||||
|
|||||||
@@ -320,7 +320,7 @@ search_elatest=Trūkst vai nav derīgs meklējamo ziņojumu skaits
|
|||||||
search_withstatus=, ar statusu $1
|
search_withstatus=, ar statusu $1
|
||||||
|
|
||||||
folder_inbox=Iesūtne
|
folder_inbox=Iesūtne
|
||||||
folder_sent=Nosūtītais pasts
|
folder_sent=Nosūtīts
|
||||||
folder_drafts=Melnraksti
|
folder_drafts=Melnraksti
|
||||||
folder_trash=Atkritumi
|
folder_trash=Atkritumi
|
||||||
|
|
||||||
|
|||||||
@@ -320,7 +320,7 @@ search_elatest=Bilangan mesej yang hilang atau tidak sah untuk dicari
|
|||||||
search_withstatus=, dengan status $1
|
search_withstatus=, dengan status $1
|
||||||
|
|
||||||
folder_inbox=Peti masuk
|
folder_inbox=Peti masuk
|
||||||
folder_sent=Menghantar surat
|
folder_sent=Dihantar
|
||||||
folder_drafts=Draf
|
folder_drafts=Draf
|
||||||
folder_trash=Sampah
|
folder_trash=Sampah
|
||||||
|
|
||||||
|
|||||||
@@ -320,7 +320,7 @@ search_elatest=Numru ta 'messaġġi nieqsa jew invalidi biex tfittex
|
|||||||
search_withstatus=, bi status $1
|
search_withstatus=, bi status $1
|
||||||
|
|
||||||
folder_inbox=Inbox
|
folder_inbox=Inbox
|
||||||
folder_sent=Intbagħat il-posta
|
folder_sent=Mibgħuta
|
||||||
folder_drafts=Abbozzi
|
folder_drafts=Abbozzi
|
||||||
folder_trash=Trash
|
folder_trash=Trash
|
||||||
|
|
||||||
|
|||||||
@@ -317,7 +317,6 @@ search_elatest=Ontbrekende of ongeldige aantal berichten om te zoeken
|
|||||||
search_withstatus=, met status $1
|
search_withstatus=, met status $1
|
||||||
|
|
||||||
folder_inbox=Inbox
|
folder_inbox=Inbox
|
||||||
folder_sent=Verstuur email
|
|
||||||
folder_drafts=Ontwerpen
|
folder_drafts=Ontwerpen
|
||||||
folder_trash=Vuilnis
|
folder_trash=Vuilnis
|
||||||
|
|
||||||
|
|||||||
@@ -4,6 +4,8 @@ mail_specialsync=Synchronisatie speciaal
|
|||||||
|
|
||||||
search_msg6=Zoekresultaten voor $1 in het veld $2
|
search_msg6=Zoekresultaten voor $1 in het veld $2
|
||||||
|
|
||||||
|
folder_sent=Verstuurd
|
||||||
|
|
||||||
left_mail=Mail
|
left_mail=Mail
|
||||||
left_search=Zoeken:
|
left_search=Zoeken:
|
||||||
left_folders=Beheer mappen
|
left_folders=Beheer mappen
|
||||||
|
|||||||
@@ -320,7 +320,6 @@ search_elatest=Manglende eller ugyldig antall meldinger å søke gjennom
|
|||||||
search_withstatus=, med status $1
|
search_withstatus=, med status $1
|
||||||
|
|
||||||
folder_inbox=Innboks
|
folder_inbox=Innboks
|
||||||
folder_sent=Sendt e-post
|
|
||||||
folder_drafts=Kladd
|
folder_drafts=Kladd
|
||||||
folder_trash=Papirkurv
|
folder_trash=Papirkurv
|
||||||
|
|
||||||
|
|||||||
@@ -1,3 +1,5 @@
|
|||||||
|
folder_sent=Sendt
|
||||||
|
|
||||||
editor_heading=Overskrift
|
editor_heading=Overskrift
|
||||||
editor_paragraph=Avsnitt
|
editor_paragraph=Avsnitt
|
||||||
editor_fontfamily_default=Misligholde
|
editor_fontfamily_default=Misligholde
|
||||||
|
|||||||
@@ -179,7 +179,7 @@ search_elatest=Brakująca lub niepoprawna liczba wiadomości do przeszukania
|
|||||||
search_withstatus=, ze statusem $1
|
search_withstatus=, ze statusem $1
|
||||||
|
|
||||||
folder_inbox=W pudełku
|
folder_inbox=W pudełku
|
||||||
folder_sent=Wysłany mail
|
folder_sent=Wysłano
|
||||||
folder_drafts=Warcaby
|
folder_drafts=Warcaby
|
||||||
folder_trash=Śmieci
|
folder_trash=Śmieci
|
||||||
|
|
||||||
|
|||||||
@@ -287,7 +287,7 @@ search_elatest=Número de mensagens ausente ou inválido para pesquisa
|
|||||||
search_withstatus=, com status $1
|
search_withstatus=, com status $1
|
||||||
|
|
||||||
folder_inbox=Caixa de entrada
|
folder_inbox=Caixa de entrada
|
||||||
folder_sent=Correspondência enviada
|
folder_sent=Enviado
|
||||||
folder_drafts=Rascunhos
|
folder_drafts=Rascunhos
|
||||||
folder_trash=Lixo
|
folder_trash=Lixo
|
||||||
|
|
||||||
|
|||||||
@@ -1,3 +1,2 @@
|
|||||||
folder_inbox=Caixa de Entrada
|
folder_inbox=Caixa de Entrada
|
||||||
folder_sent=E-mais Enviados
|
|
||||||
folder_trash=Lixo
|
folder_trash=Lixo
|
||||||
|
|||||||
@@ -319,6 +319,7 @@ search_latestnum=Apenas os mais recentes
|
|||||||
search_elatest=Número de mensagens ausente ou inválido para pesquisa
|
search_elatest=Número de mensagens ausente ou inválido para pesquisa
|
||||||
search_withstatus=, com status $1
|
search_withstatus=, com status $1
|
||||||
|
|
||||||
|
folder_sent=Enviado
|
||||||
folder_drafts=Rascunhos
|
folder_drafts=Rascunhos
|
||||||
|
|
||||||
detach_err=Falha ao desanexar arquivo
|
detach_err=Falha ao desanexar arquivo
|
||||||
|
|||||||
@@ -320,7 +320,7 @@ search_elatest=Număr de mesaje lipsă sau nevalide de căutat
|
|||||||
search_withstatus=, cu statut $1
|
search_withstatus=, cu statut $1
|
||||||
|
|
||||||
folder_inbox=Inbox
|
folder_inbox=Inbox
|
||||||
folder_sent=E-mail trimis
|
folder_sent=Trimis
|
||||||
folder_drafts=Schițe
|
folder_drafts=Schițe
|
||||||
folder_trash=Gunoi
|
folder_trash=Gunoi
|
||||||
|
|
||||||
|
|||||||
@@ -320,7 +320,7 @@ search_elatest=Отсутствует или неверное количеств
|
|||||||
search_withstatus=со статусом $1
|
search_withstatus=со статусом $1
|
||||||
|
|
||||||
folder_inbox=входящие
|
folder_inbox=входящие
|
||||||
folder_sent=Отправленные письма
|
folder_sent=Отправил
|
||||||
folder_drafts=Черновики
|
folder_drafts=Черновики
|
||||||
folder_trash=дрянь
|
folder_trash=дрянь
|
||||||
|
|
||||||
|
|||||||
@@ -320,7 +320,7 @@ search_elatest=Chýba alebo je neplatný počet správ na vyhľadávanie
|
|||||||
search_withstatus=, so stavom $1
|
search_withstatus=, so stavom $1
|
||||||
|
|
||||||
folder_inbox=Doručená pošta
|
folder_inbox=Doručená pošta
|
||||||
folder_sent=Odoslaná pošta
|
folder_sent=Odoslané
|
||||||
folder_drafts=dáma
|
folder_drafts=dáma
|
||||||
folder_trash=Smeti
|
folder_trash=Smeti
|
||||||
|
|
||||||
|
|||||||
@@ -320,7 +320,7 @@ search_elatest=Manjkajoče ali neveljavno število sporočil za iskanje
|
|||||||
search_withstatus=, s statusom $1
|
search_withstatus=, s statusom $1
|
||||||
|
|
||||||
folder_inbox=Prejeto
|
folder_inbox=Prejeto
|
||||||
folder_sent=Poslana pošta
|
folder_sent=Poslano
|
||||||
folder_drafts=Osnutki
|
folder_drafts=Osnutki
|
||||||
folder_trash=Smeti
|
folder_trash=Smeti
|
||||||
|
|
||||||
|
|||||||
@@ -260,7 +260,7 @@ search_elatest=Det saknas eller ogiltigt antal meddelanden att söka efter
|
|||||||
search_withstatus=, med status $1
|
search_withstatus=, med status $1
|
||||||
|
|
||||||
folder_inbox=Inkorg
|
folder_inbox=Inkorg
|
||||||
folder_sent=Skickade post
|
folder_sent=Skickat
|
||||||
folder_drafts=utkast
|
folder_drafts=utkast
|
||||||
folder_trash=Skräp
|
folder_trash=Skräp
|
||||||
|
|
||||||
|
|||||||
@@ -320,7 +320,7 @@ search_elatest=จำนวนข้อความที่ขาดหาย
|
|||||||
search_withstatus=ด้วยสถานะ $1
|
search_withstatus=ด้วยสถานะ $1
|
||||||
|
|
||||||
folder_inbox=กล่องขาเข้า
|
folder_inbox=กล่องขาเข้า
|
||||||
folder_sent=ส่งอีเมล
|
folder_sent=ส่งแล้ว
|
||||||
folder_drafts=ร่าง
|
folder_drafts=ร่าง
|
||||||
folder_trash=ขยะ
|
folder_trash=ขยะ
|
||||||
|
|
||||||
|
|||||||
@@ -275,7 +275,6 @@ search_elatest=Arama için hatalı veya gecersiz sayıda mesaj
|
|||||||
search_withstatus=, durum kodu $1 olan
|
search_withstatus=, durum kodu $1 olan
|
||||||
|
|
||||||
folder_inbox=Gelen Kutusu
|
folder_inbox=Gelen Kutusu
|
||||||
folder_sent=Gönderilen postalar
|
|
||||||
folder_drafts=Taslaklar
|
folder_drafts=Taslaklar
|
||||||
folder_trash=Çop Kutusu
|
folder_trash=Çop Kutusu
|
||||||
|
|
||||||
|
|||||||
@@ -52,6 +52,8 @@ send_title2=Posta Kaydedildi
|
|||||||
search_msg6=$2 alanında $1 için arama sonuçları
|
search_msg6=$2 alanında $1 için arama sonuçları
|
||||||
search_attach=Ekleri olmalı mı?
|
search_attach=Ekleri olmalı mı?
|
||||||
|
|
||||||
|
folder_sent=Gönderilmiş
|
||||||
|
|
||||||
sform_header=Gelişmiş e-posta arama seçenekleri
|
sform_header=Gelişmiş e-posta arama seçenekleri
|
||||||
sform_andmode=Ölçüt modu
|
sform_andmode=Ölçüt modu
|
||||||
sform_folder2=Klasörlerde ara
|
sform_folder2=Klasörlerde ara
|
||||||
|
|||||||
@@ -320,7 +320,7 @@ search_elatest=Відсутня або недійсна кількість по
|
|||||||
search_withstatus=, зі статусом $1
|
search_withstatus=, зі статусом $1
|
||||||
|
|
||||||
folder_inbox=Вхідні
|
folder_inbox=Вхідні
|
||||||
folder_sent=Надіслати пошту
|
folder_sent=Надісланий
|
||||||
folder_drafts=Чернетки
|
folder_drafts=Чернетки
|
||||||
folder_trash=Сміття
|
folder_trash=Сміття
|
||||||
|
|
||||||
|
|||||||
@@ -320,7 +320,7 @@ search_elatest=تلاش کرنے کیلئے پیغامات کی گمشدہ یا
|
|||||||
search_withstatus=, with status $1
|
search_withstatus=, with status $1
|
||||||
|
|
||||||
folder_inbox=ان باکس
|
folder_inbox=ان باکس
|
||||||
folder_sent=میل بھیجا
|
folder_sent=بھیجا
|
||||||
folder_drafts=ڈرافٹس
|
folder_drafts=ڈرافٹس
|
||||||
folder_trash=کوڑے دان
|
folder_trash=کوڑے دان
|
||||||
|
|
||||||
|
|||||||
@@ -320,7 +320,7 @@ search_elatest=Thiếu hoặc không hợp lệ số lượng tin nhắn để t
|
|||||||
search_withstatus=, với trạng thái $1
|
search_withstatus=, với trạng thái $1
|
||||||
|
|
||||||
folder_inbox=Hộp thư đến
|
folder_inbox=Hộp thư đến
|
||||||
folder_sent=Gửi mail
|
folder_sent=Đã gửi
|
||||||
folder_drafts=Dự thảo
|
folder_drafts=Dự thảo
|
||||||
folder_trash=Rác
|
folder_trash=Rác
|
||||||
|
|
||||||
|
|||||||
@@ -234,7 +234,7 @@ search_elatest=要搜索的消息丢失或数量无效
|
|||||||
search_withstatus=,状态为$1
|
search_withstatus=,状态为$1
|
||||||
|
|
||||||
folder_inbox=收件箱
|
folder_inbox=收件箱
|
||||||
folder_sent=发送邮件
|
folder_sent=发送
|
||||||
folder_drafts=草稿
|
folder_drafts=草稿
|
||||||
folder_trash=垃圾
|
folder_trash=垃圾
|
||||||
|
|
||||||
|
|||||||
@@ -213,7 +213,6 @@ search_local=在本地資料夾
|
|||||||
search_all=在所有資料夾
|
search_all=在所有資料夾
|
||||||
|
|
||||||
folder_inbox=收件夾
|
folder_inbox=收件夾
|
||||||
folder_sent=傳送郵件
|
|
||||||
folder_drafts=草稿
|
folder_drafts=草稿
|
||||||
folder_trash=垃圾桶
|
folder_trash=垃圾桶
|
||||||
|
|
||||||
|
|||||||
@@ -117,6 +117,8 @@ search_latestnum=只有最新
|
|||||||
search_elatest=要搜索的消息丟失或數量無效
|
search_elatest=要搜索的消息丟失或數量無效
|
||||||
search_withstatus=,狀態為$1
|
search_withstatus=,狀態為$1
|
||||||
|
|
||||||
|
folder_sent=發送
|
||||||
|
|
||||||
sform_header=進階電子郵件搜尋選項
|
sform_header=進階電子郵件搜尋選項
|
||||||
sform_andmode=標準模式
|
sform_andmode=標準模式
|
||||||
sform_folder2=搜索文件夾
|
sform_folder2=搜索文件夾
|
||||||
|
|||||||
@@ -60,6 +60,7 @@ $vers || usage();
|
|||||||
"webmin-search-lib.pl", "WebminCore.pm",
|
"webmin-search-lib.pl", "WebminCore.pm",
|
||||||
"record-login.pl", "record-logout.pl", "record-failed.pl",
|
"record-login.pl", "record-logout.pl", "record-failed.pl",
|
||||||
"robots.txt", "unauthenticated", "bin", "html-editor-lib.pl",
|
"robots.txt", "unauthenticated", "bin", "html-editor-lib.pl",
|
||||||
|
"switch_theme.cgi",
|
||||||
);
|
);
|
||||||
if ($min) {
|
if ($min) {
|
||||||
# Only those required by others
|
# Only those required by others
|
||||||
|
|||||||
@@ -33,7 +33,7 @@ $ENV{'PATH'} = "/bin:/usr/bin:/usr/local/bin:/sbin:/usr/sbin";
|
|||||||
my $allow_overwrite = 0;
|
my $allow_overwrite = 0;
|
||||||
|
|
||||||
my ($force_theme, $rpmdepends, $no_prefix, $vendor, $provides, $url,
|
my ($force_theme, $rpmdepends, $no_prefix, $vendor, $provides, $url,
|
||||||
$force_usermin, $final_mod, $sign, $epoch, $dir, $ver, @extrareqs,
|
$force_usermin, $final_mod, $sign, $keyname, $epoch, $dir, $ver, @extrareqs,
|
||||||
@exclude);
|
@exclude);
|
||||||
|
|
||||||
# Parse command-line args
|
# Parse command-line args
|
||||||
@@ -85,6 +85,9 @@ while(@ARGV) {
|
|||||||
elsif ($a eq "--sign") {
|
elsif ($a eq "--sign") {
|
||||||
$sign = 1;
|
$sign = 1;
|
||||||
}
|
}
|
||||||
|
elsif ($a eq "--key") {
|
||||||
|
$keyname = shift(@ARGV);
|
||||||
|
}
|
||||||
elsif ($a eq "--epoch") {
|
elsif ($a eq "--epoch") {
|
||||||
$epoch = shift(@ARGV);
|
$epoch = shift(@ARGV);
|
||||||
}
|
}
|
||||||
@@ -426,7 +429,8 @@ unlink("$rpm_source_dir/$mod.tar.gz");
|
|||||||
|
|
||||||
# Sign if requested
|
# Sign if requested
|
||||||
if ($sign) {
|
if ($sign) {
|
||||||
system("echo | rpm --resign $rpm_dir/$prefix$mod-$ver-$release.noarch.rpm $source_rpm_dir/$prefix$mod-$ver-$release.src.rpm");
|
my $keyflag = $keyname ? "-D '_gpg_name $keyname'" : "";
|
||||||
|
system("echo | rpm --resign $keyflag $rpm_dir/$prefix$mod-$ver-$release.noarch.rpm $source_rpm_dir/$prefix$mod-$ver-$release.src.rpm");
|
||||||
}
|
}
|
||||||
|
|
||||||
if ($target_dir =~ /:/) {
|
if ($target_dir =~ /:/) {
|
||||||
|
|||||||
@@ -86,7 +86,7 @@ Version: $ver
|
|||||||
Release: $rel
|
Release: $rel
|
||||||
Provides: %{name}-%{version} perl(WebminCore)
|
Provides: %{name}-%{version} perl(WebminCore)
|
||||||
Requires(pre): /usr/bin/perl
|
Requires(pre): /usr/bin/perl
|
||||||
Requires: /bin/sh /usr/bin/perl /bin/rm perl(lib) perl(open) perl(Net::SSLeay) perl(Time::Local) perl(Data::Dumper) perl(File::Path) perl(File::Basename) perl(Digest::SHA) perl(Digest::MD5) openssl unzip tar gzip
|
Requires: /bin/sh /usr/bin/perl perl(lib) perl(open) perl(Net::SSLeay) perl(Time::Local) perl(Data::Dumper) perl(File::Path) perl(File::Basename) perl(Digest::SHA) perl(Digest::MD5) openssl unzip tar gzip
|
||||||
Recommends: perl(DateTime) perl(DateTime::TimeZone) perl(DateTime::Locale) perl(Time::Piece) perl(Encode::Detect) lynx
|
Recommends: perl(DateTime) perl(DateTime::TimeZone) perl(DateTime::Locale) perl(Time::Piece) perl(Encode::Detect) lynx
|
||||||
AutoReq: 0
|
AutoReq: 0
|
||||||
License: BSD-3-clause
|
License: BSD-3-clause
|
||||||
|
|||||||
14
miniserv.pl
14
miniserv.pl
@@ -1303,11 +1303,10 @@ if ($header_timeout > 10*60) {
|
|||||||
$header_timeout = 10*60;
|
$header_timeout = 10*60;
|
||||||
}
|
}
|
||||||
|
|
||||||
# Wait at most 60 secs for start of headers for initial requests, or
|
|
||||||
# 10 minutes for kept-alive connections
|
|
||||||
local $rmask;
|
local $rmask;
|
||||||
vec($rmask, fileno(SOCK), 1) = 1;
|
vec($rmask, fileno(SOCK), 1) = 1;
|
||||||
local $to = $checked_timeout ? 10*60 : $header_timeout;
|
local $to = $checked_timeout ? 10*60 : $header_timeout;
|
||||||
|
print DEBUG "handle_request: waiting for $to seconds\n";
|
||||||
local $sel = select($rmask, undef, undef, $to);
|
local $sel = select($rmask, undef, undef, $to);
|
||||||
if (!$sel) {
|
if (!$sel) {
|
||||||
if ($checked_timeout) {
|
if ($checked_timeout) {
|
||||||
@@ -4749,10 +4748,15 @@ if ($config{'ssl_cipher_list'}) {
|
|||||||
"$@\n";
|
"$@\n";
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
# Accept the SSL connection
|
||||||
Net::SSLeay::set_fd($ssl_con, fileno($sock));
|
Net::SSLeay::set_fd($ssl_con, fileno($sock));
|
||||||
if (!Net::SSLeay::accept($ssl_con)) {
|
alarm(10);
|
||||||
return undef;
|
$SIG{'ALRM'} = sub { die "timeout" };
|
||||||
}
|
my $ok = Net::SSLeay::accept($ssl_con);
|
||||||
|
alarm(0);
|
||||||
|
return undef if (!$ok);
|
||||||
|
|
||||||
# Check for a per-hostname SSL context and use that instead
|
# Check for a per-hostname SSL context and use that instead
|
||||||
if (defined(&Net::SSLeay::get_servername)) {
|
if (defined(&Net::SSLeay::get_servername)) {
|
||||||
my $h = Net::SSLeay::get_servername($ssl_con);
|
my $h = Net::SSLeay::get_servername($ssl_con);
|
||||||
|
|||||||
@@ -865,6 +865,7 @@ root_epass1=No new password entered
|
|||||||
root_epass2=Passwords do not match
|
root_epass2=Passwords do not match
|
||||||
root_none=No password!
|
root_none=No password!
|
||||||
root_auto=Automatic (typically <tt>root</tt>)
|
root_auto=Automatic (typically <tt>root</tt>)
|
||||||
|
root_socket=The MySQL <tt>$1</tt> user is using Unix socket authentication, so no password is needed and the password cannot be changed.
|
||||||
|
|
||||||
mysqlpass_err=MySQL safe mode
|
mysqlpass_err=MySQL safe mode
|
||||||
mysqlpass_esafecmd=The command $1 needed to start MySQL with authentication disabled was not found
|
mysqlpass_esafecmd=The command $1 needed to start MySQL with authentication disabled was not found
|
||||||
|
|||||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user