Add plesk_list_users() function for Plesk user discovery
Issue: list_plesk_users() in user-manager.sh was trying to query MySQL but the query was failing, resulting in 0 users detected on Plesk. Fix: 1. Added plesk_list_users() to plesk-helpers.sh that uses: - Plesk CLI: 'plesk bin client --list' (primary) - Fallback: Scan /var/www/vhosts directories 2. Updated list_plesk_users() in user-manager.sh to: - First try plesk_list_users() if available - Then try MySQL query - Last resort: directory scan This should now detect Plesk users from either Plesk API or filesystem fallback. Testing: Will verify on Plesk server
This commit is contained in:
@@ -46,6 +46,24 @@ plesk_list_domains() {
|
||||
fi
|
||||
}
|
||||
|
||||
#############################################################################
|
||||
# USER DISCOVERY
|
||||
#############################################################################
|
||||
|
||||
# Get list of all Plesk users (clients)
|
||||
# Returns: One username per line
|
||||
plesk_list_users() {
|
||||
if plesk_cli_available; then
|
||||
# Try to get client logins from Plesk
|
||||
plesk_exec bin client --list 2>/dev/null | tail -n +3 | awk '{print $1}' | grep -v "^$"
|
||||
else
|
||||
# Fallback: Get unique owners from vhosts directories
|
||||
find /var/www/vhosts -maxdepth 1 -type d -printf "%f\n" 2>/dev/null | \
|
||||
grep -v "^system$\|^chroot$\|^\.skel$\|^default$\|^fs$\|^fs-passwd$" | \
|
||||
grep -v "^\." || true
|
||||
fi
|
||||
}
|
||||
|
||||
# Get domain info
|
||||
# Usage: plesk_domain_info DOMAIN
|
||||
plesk_domain_info() {
|
||||
|
||||
Reference in New Issue
Block a user