Private/_NewSession.ps1

function _NewSession {
    [CmdletBinding()]
    param (
        [Parameter(Mandatory = $true)]
        $Identity
    )
    if (Get-PSSession -Name ADLookups -ErrorAction SilentlyContinue) {
        Remove-PSSession -Name ADLookups
    }

    #region Online Status
    try {
        $Script:Session = New-PSSession @SessionSplat -Name ADLookups -ComputerName $Identity -ErrorAction Stop -ErrorVariable ErrorVar
    }
    catch {
        switch ($ErrorVar.FullyQualifiedErrorId) {
            'AccessDenied,PSSessionOpenFailed' {
                # Access Denied
                Write-Host 'Access Denied.'
            }
            'NetworkPathNotFound,PSSessionOpenFailed' {
                # Computer not found
                Write-Host 'Host not found.'
            }
            'URLNotAvailable,PSSessionOpenFailed' {
                # Most likely trying to create a session to localhost
                Write-Host 'Is this localhost?'
            }
            Default {
                Write-Host 'Unable to create session.'
            }
        }
    }

    if ($Session) {
        $ADLookups_ComputerTabOnlineEllipse.Fill = "#FF64DD17"
        $ADLookups_ComputerTabOnlineTextBlock.Text = "Online"
    } else {
        $ADLookups_ComputerTabOnlineEllipse.Fill = "#FFE0E0E0"
        $ADLookups_ComputerTabOnlineTextBlock.Text = "Offline"
    }


    #endregion
}