[CmdletBinding()] param ( [string] $ProjectName, [string] $Server ) . .\Variables.ps1 if($PSBoundParameters.ContainsKey("ProjectName")){ if($PSBoundParameters.ContainsKey("Server")){ $ret = New-ADGroup -Path $Projects -Server $Server -Name $ProjectName -GroupCategory Security -GroupScope Global -PassThru #$ret = Get-ADGroup $ProjectName -SearchBase $Projects -Server $Server $acls = . .\AddProjectACL.ps1 -ProjectName $ProjectName -Server $Server $rs = . .\AddProjectRoles.ps1 -ProjectName $ProjectName -Server $Server #$ret | Add-ADGroupMember -Members $acl,$r $acls | ForEach-Object {add-ADGroupMember -Identity $ret -Members $_ -Server $Server} $rs | ForEach-Object {Add-ADGroupMember -Identity $ret -Members $_ -Server $Server} } else { $ret = New-ADGroup -Path $Projects -Name $ProjectName -GroupCategory Security -GroupScope Global -PassThru #$ret = Get-ADGroup $ProjectName -SearchBase $Projects $acls = . .\AddProjectACL.ps1 -ProjectName $ProjectName $rs = . .\AddProjectRoles.ps1 -ProjectName $ProjectName #$ret | Add-ADGroupMember -Members $acl,$r $acls | ForEach-Object {Add-ADGroupMember -Identity $ret -Members $_} $rs | ForEach-Object {Add-ADGroupMember -Identity $ret -Members $_} } return $ret } throw "ProjectName parameter needs to be set"