Private/SharingLinks.ps1
|
# Classifies a SharePoint "SharingLinks.*" group title into a link class. # # Title format: SharingLinks.{documentUniqueId}.{LinkKind}.{sharingId} # LinkKind examples: AnonymousView, AnonymousEdit, OrganizationView, OrganizationEdit, # Flexible (people-specific). We match on the kind fragment so new # view/edit variants still classify correctly. function Get-CGLinkClass { [CmdletBinding()] [OutputType([hashtable])] param( [Parameter(Mandatory)][string]$Title ) $parts = $Title -split '\.' $kind = if ($parts.Count -ge 3) { $parts[2] } else { 'Unknown' } switch -Wildcard ($kind) { '*Anonymous*' { return @{ Class = 'Anonymous'; Kind = $kind } } '*Organization*' { return @{ Class = 'Organization'; Kind = $kind } } 'Flexible' { return @{ Class = 'Specific'; Kind = $kind } } default { return @{ Class = 'Other'; Kind = $kind } } } } |