Import-Module ActiveDirectory -ErrorAction Stop

# --- Állítsd be a csoport e-mail címét vagy nevét ---
$groupEmail = "abteilungsleitungen-jenfeld@aps-hh.de"
$out = "C:\Tools\group_members.csv"

# --- Csoport objektum lekérése az e-mail cím alapján ---
$group = Get-ADGroup -Filter "mail -eq '$groupEmail'" -Properties mail

if (-not $group) {
    Write-Host "Nem található csoport ezzel az e-mail címmel: $groupEmail" -ForegroundColor Red
    exit
}

Write-Host "Csoport megtalálva: $($group.Name) ($($group.DistinguishedName))"

# --- Csoporttagok lekérése ---
$members = Get-ADGroupMember -Identity $group.DistinguishedName -Recursive | Where-Object { $_.ObjectClass -eq 'user' }

if (-not $members) {
    Write-Host "Nincsenek felhasználók a csoportban vagy nincs jogosultság a lekérdezéshez." -ForegroundColor Yellow
    exit
}

# --- AD-felhasználói adatok lekérése ---
$Results = $members | ForEach-Object {
    Get-ADUser -Identity $_.SamAccountName -Properties mail,telephoneNumber,mobile,fax,physicalDeliveryOfficeName,department,title,Enabled |
    Select-Object @{
        Name='Name';Expression={$_.Name}
      }, @{
        Name='SamAccountName';Expression={$_.SamAccountName}
      }, @{
        Name='Mail';Expression={$_.mail}
      }, @{
        Name='Telephone';Expression={$_.telephoneNumber}
      }, @{
        Name='Mobile';Expression={$_.mobile}
      }, @{
        Name='Fax_business';Expression={$_.fax}
      }, @{
        Name='Office';Expression={$_.physicalDeliveryOfficeName}
      }, @{
        Name='Department';Expression={$_.department}
      }, @{
        Name='Title';Expression={$_.title}
      }, @{
        Name='Enabled';Expression={$_.Enabled}
      }
}

# --- Export CSV ---
$Results | Export-Csv -Path $out -NoTypeInformation -Encoding UTF8

# --- Konzolos megjelenítés ---
$Results | Format-Table Name,SamAccountName,Mail,Telephone,Mobile,Fax_business,Office,Department,Title,Enabled -AutoSize

Write-Host "`nCsoport: $($group.Name)"
Write-Host "Kimenet: $out ($($Results.Count) felhasználó)" -ForegroundColor Green
