From 2d5768a6123fea5b7fb0ffa84f2e9aeabe721977 Mon Sep 17 00:00:00 2001 From: Ilia Ross Date: Sun, 1 Jun 2025 10:24:05 +0300 Subject: [PATCH] Fix to speed up checking domains and users --- forgot.cgi | 12 ++++-------- forgot_send.cgi | 9 ++++----- 2 files changed, 8 insertions(+), 13 deletions(-) diff --git a/forgot.cgi b/forgot.cgi index 4136e58a2..b399f1a61 100755 --- a/forgot.cgi +++ b/forgot.cgi @@ -32,14 +32,10 @@ my ($muser, $muserdom); if (!$wuser && $link{'muser'}) { # Probably Virtualmin mail user, so try to find it &foreign_require("virtual-server"); - foreach my $d (&virtual_server::list_domains()) { - my @users = - &virtual_server::list_domain_users($d, 0, 0, 0, 0, 1); - ($muser) = grep { $_->{'user'} eq lc($link{'muser'}) } @users; - if ($muser) { - $muserdom = $d; - last; - } + my $d = &virtual_server::get_user_domain(lc($link{'muser'})); + if ($d) { + my @u = &virtual_server::list_domain_users($d, 0, 0, 1, 1, 0); + ($muser) = grep { $_->{'user'} eq lc($link{'muser'}) } @u; } } diff --git a/forgot_send.cgi b/forgot_send.cgi index f60aa54ef..9ad8d532e 100755 --- a/forgot_send.cgi +++ b/forgot_send.cgi @@ -33,11 +33,10 @@ my $muser; if (!$wuser && &foreign_check("virtual-server")) { # Probably in Virtualmin, so try to find the user &foreign_require("virtual-server"); - foreach my $d (&virtual_server::list_domains()) { - my @users = - &virtual_server::list_domain_users($d, 0, 0, 0, 0, 1); - ($muser) = grep { $_->{'user'} eq lc($in{'forgot'}) } @users; - last if ($muser); + my $d = &virtual_server::get_user_domain(lc($in{'forgot'})); + if ($d) { + my @u = &virtual_server::list_domain_users($d, 0, 0, 1, 1, 0); + ($muser) = grep { $_->{'user'} eq lc($in{'forgot'}) } @u; } }