Private/Set-UPNSuffix.ps1
|
function Set-UPNSuffix { ################################################################################ ##### ##### ##### Define a UPNSuffix ##### ##### ##### ################################################################################ $CurrentFunction = Get-FunctionName Write-Log -Message "### Start Function $CurrentFunction ###" $StartRunTime = (Get-Date).ToString($Script:DateFormatLog) #################### main code | out- host ##################### $previousUPN = Get-KeyValue -key "LastUPNSuffix" If ($previousUPN.contains("@") ) { $HelpP = "Use the previous selection." $message = "Use current UPN suffix ($previousUPN) or select new:" # Invoke-Output -Type TextMaker -Message "Current UPN suffix:" -Tm $previousUPN } else { $message = "Select new UPN suffix:" $HelpP = $null } $Title = "UPN suffix - Define Target Account" $Options = @( [pscustomobject] @{ Label = "&Previous UPN suffix"; Help = $HelpP ; Value = "Previous" }, [pscustomobject] @{ Label = "&New UPN suffix"; Help = "Choose a dedicated UPN suffix."; Value = "New" } ) $Decision = Show-DecisionPrompt -Message $message -Options $Options -Default 0 -Title $Title If ($Decision -eq "New") { $result = Get-UPNSuffix Invoke-Output -Type TextMaker -Message "New UPN suffix:" -Tm $result } else { $result = $previousUPN Invoke-Output -Type Info -message "Keep previous UPN suffix!" } ######################## main code ############################ $runtime = Get-RunTime -StartRunTime $StartRunTime Write-Log -Message " Run Time: $runtime [h] ###" Write-Log -Message "### End Function $CurrentFunction ###" return $result } |