Public/Show-W365UserSetting.ps1
|
function Show-W365UserSetting { [CmdletBinding()] [OutputType('WindowsCloudPC.UserSetting')] param([switch]$Browse) begin { Import-W365CliWindowsCloudPC } process { $items = @(Get-CloudPCUserSetting -IncludeAssignments | Sort-Object DisplayName) if ($items.Count -eq 0) { Write-Warning 'No user settings were returned.'; return } $columnHeader = '{0} {1} {2} {3} {4} {5}' -f (Format-W365CliText -Text 'Name' -Width 38),(Format-W365CliText -Text 'SelfSvc' -Width 8),(Format-W365CliText -Text 'Admin' -Width 8),(Format-W365CliText -Text 'Reset' -Width 8),(Format-W365CliText -Text 'Restore' -Width 9),(Format-W365CliText -Text 'DR' -Width 8) Select-W365CliObject -InputObject $items -Title 'Windows 365 user settings' -DisplayProperties @('DisplayName','SelfServiceEnabled','LocalAdminEnabled','ResetEnabled','UserRestoreEnabled','CrossRegionDisasterRecoveryEnabled') -FilterProperties @('DisplayName','ProvisioningSourceType') -LabelScript { param($Setting) '{0} {1} {2} {3} {4} {5}' -f (Format-W365CliText -Text $Setting.DisplayName -Width 38),(Format-W365CliText -Text $Setting.SelfServiceEnabled -Width 8),(Format-W365CliText -Text $Setting.LocalAdminEnabled -Width 8),(Format-W365CliText -Text $Setting.ResetEnabled -Width 8),(Format-W365CliText -Text $Setting.UserRestoreEnabled -Width 9),(Format-W365CliText -Text $Setting.CrossRegionDisasterRecoveryEnabled -Width 8) } -DetailScript { param($Setting) $Setting.PSObject.Properties | Where-Object Name -notlike 'Raw*' | ForEach-Object { "{0}: {1}" -f $_.Name, $_.Value } } -RefreshScript { @(Get-CloudPCUserSetting -IncludeAssignments | Sort-Object DisplayName) } -ColumnHeader $columnHeader -PageSize 18 -ViewOnly:$Browse -Breadcrumb @('W365CLI','Tenant settings','User settings') } } |