You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Add new PowerShell functions for modifying calendar permissions in Exchange:
- ExecModifyCalPerms.ps1: Core implementation for calendar permission modifications
- Invoke-ExecModifyCalPerms.ps1: HTTP function wrapper for the calendar permissions modification
$null=$results.Add("Granted $($TargetUser)$($PermissionLevel) access to $($username) Calendar$($CanViewPrivateItems?' with access to private items' : '')")
$null=$results.Add("Updated $($TargetUser)$($PermissionLevel) access to $($username) Calendar$($CanViewPrivateItems?' with access to private items' : '')")
132
+
}
133
+
}
134
+
Write-LogMessage-headers $Request.Headers-API $APINAME-message "Successfully executed $($PermissionLevel) permission modification for $($TargetUser) on $($username)"-Sev 'Info'-tenant $TenantFilter
135
+
}
136
+
catch {
137
+
$HasErrors=$true
138
+
Write-LogMessage-headers $Request.Headers-API $APINAME-message "Could not execute $($PermissionLevel) permission modification for $($TargetUser) on $($username). Error: $($_.Exception.Message)"-Sev 'Error'-tenant $TenantFilter
139
+
$null=$results.Add("Could not execute $($PermissionLevel) permission modification for $($TargetUser) on $($username). Error: $($_.Exception.Message)")
140
+
}
141
+
}
142
+
}
143
+
144
+
if ($results.Count-eq0) {
145
+
Write-LogMessage-headers $Request.Headers-API $APINAME-message 'No results were generated from the operation'-Sev 'Warning'
146
+
$null=$results.Add('No results were generated from the operation. Please check the logs for more details.')
147
+
$HasErrors=$true
148
+
}
149
+
150
+
$body= [pscustomobject]@{'Results'=@($results) }
151
+
152
+
# Associate values to output bindings by calling 'Push-OutputBinding'.
$null=$results.Add("Granted $($TargetUser)$($PermissionLevel) access to $($username) Calendar$($CanViewPrivateItems?' with access to private items' : '')")
$null=$results.Add("Updated $($TargetUser)$($PermissionLevel) access to $($username) Calendar$($CanViewPrivateItems?' with access to private items' : '')")
115
+
}
116
+
}
117
+
Write-LogMessage-headers $Request.Headers-API $APINAME-message "Successfully executed $($PermissionLevel) permission modification for $($TargetUser) on $($username)"-Sev 'Info'-tenant $TenantFilter
118
+
}
119
+
catch {
120
+
$HasErrors=$true
121
+
Write-LogMessage-headers $Request.Headers-API $APINAME-message "Could not execute $($PermissionLevel) permission modification for $($TargetUser) on $($username). Error: $($_.Exception.Message)"-Sev 'Error'-tenant $TenantFilter
122
+
$null=$results.Add("Could not execute $($PermissionLevel) permission modification for $($TargetUser) on $($username). Error: $($_.Exception.Message)")
123
+
}
124
+
}
125
+
}
126
+
127
+
if ($results.Count-eq0) {
128
+
Write-LogMessage-headers $Request.Headers-API $APINAME-message 'No results were generated from the operation'-Sev 'Warning'
129
+
$null=$results.Add('No results were generated from the operation. Please check the logs for more details.')
130
+
$HasErrors=$true
131
+
}
132
+
133
+
$body= [pscustomobject]@{'Results'=@($results) }
134
+
135
+
# Associate values to output bindings by calling 'Push-OutputBinding'.
0 commit comments