Public/get-AllegisInUseUsername.ps1

function get-AllegisInUseUsername {
    [cmdletbinding()]
    param(       
        [Parameter(Mandatory)] 
        [string]$username,
        [pscredential]$adcred,
        [string]$adforest,
        [boolean]$corpAD=$true,
        [boolean]$ASQL=$false,
        [string]$sqlserver,
        [pscredential]$sqlcred,
        [string]$sqldatabase,
        [string]$sqltable,
        [boolean]$azureAD=$false,
        [boolean]$snow=$false,
        [string]$snowEnv,
        [pscredential]$snowcred,
        [boolean]$fim=$false,
        [string]$fimservice,
        [string]$FIMuri,
        [PSCredential]$fimcred,
        [boolean]$IdentityNow=$false,
        [string]$IDNOrg,
        [string]$IDNClientID,
        [string]$IDNSecret

)
    $found=$false
    if (-not $found -and $ASQL)
    {
        $params = @{
            'Database' = $sqldatabase
            'ServerInstance' = $sqlserver
            'Username' = $sqlcred.UserName
            'Password' = $sqlcred.GetNetworkCredential().Password
            'Query' = "select * from [dbo].[$sqltable] where mailnickname='$username'"
        }
        $user=Invoke-Sqlcmd @params
        if ($user -ne $null){
            $found=$true
        }
    }
    if (-not $found -and $corpad){
        if ($adcred -eq $null){
            $user=get-aduser -filter {samaccountname -eq $username -or mailnickname -eq $username} -server $adforest
        }else{
            $user=get-aduser -filter {samaccountname -eq $username -or mailnickname -eq $username} -server $adforest -Credential $adcred
        }
        if ($user -ne $null){
            $found=$true
        }
    }
    if (-not $found -and $azureAD)
    {
        $user=$null
        if ($user -ne $null){
            $found=$true
        }
    }
    if (-not $found -and $snow)
    {
        $user=get-AllegisSnowUser -snowenv $snowEnv -snowcred $snowcred -uid $username
        if ($user -ne $null){
            $found=$true
        }
    }
    if (-not $found -and $fim)
    {
        $user=get-AllegisFIMUser -accountname $username -fimservice $fimservice -FIMuri $FIMuri -fimcred $fimcred
        if ($user -ne $null){
            $found=$true
        }
    }
    if (-not $found -and $IdentityNow)
    {
        $user=get-AllegisIDNIdentity -orgname $IDNOrg -uid $username -IDNClientID $idnclientid -IDNClientKey $IDNSecret -SearchAPI
        if ($user -ne $null){
            $found=$true
        }
    }
    return $found
}