Private/Set-LGroup.ps1
function Set-LGroup { [CmdletBinding()] param ( [Parameter(Mandatory)] [ValidateNotNullOrEmpty()] [Alias("Username", "Identity")] [String[]] $Member , [Parameter(Mandatory)] [ValidateSet("Add", "Delete")] [String] $Action, [Switch] $IsLocal ) process { if ($IsLocal) { $Command = { $language = (Get-UICulture).name.substring(0, 2) $GroupsinLang = @{ es = "Usuarios de escritorio remoto" en = "Remote Desktop Users" } # hashtable $Group = $GroupsinLang[$Language] Foreach ($user in $Member) { Write-Verbose "Setting operation $Action over user $User on $($Env:COMPUTERNAME)" net LocalGroup $Group /$Action $user } # foreach } } else { $Command = { $language = (Get-UICulture).name.substring(0, 2) $GroupsinLang = @{ es = "Usuarios de escritorio remoto" en = "Remote Desktop Users" } # hashtable $Group = $GroupsinLang[$Language] Foreach ($user in $using:Member) { Write-Verbose "Setting operation $Action over user $User on $($Env:ComputerName)" net LocalGroup $Group /$Using:Action $user } # foreach } } # return a scriptblock Write-Output $Command } # process } #Function |