// Token: 0x0600258F RID: 9615 RVA: 0x000D943C File Offset: 0x000D763C internal SharedCalendarItemInfobar(UserContext userContext, CalendarFolder folder, int colorIndex, bool renderNotifyForOtherUser) { if (userContext == null) { throw new ArgumentNullException("userContext"); } if (folder == null) { throw new ArgumentNullException("folder"); } this.userContext = userContext; this.folder = folder; this.colorIndex = colorIndex; this.renderNotifyForOtherUser = renderNotifyForOtherUser; this.isSharedOutFolder = Utilities.IsFolderSharedOut(folder); OwaStoreObjectId owaStoreObjectId = OwaStoreObjectId.CreateFromStoreObject(folder); if (owaStoreObjectId.GetSession(userContext) is MailboxSession) { this.folderEncodedDisplayName = Utilities.SanitizeHtmlEncode(string.Format(LocalizedStrings.GetNonEncoded(-83764036), folder.DisplayName, Utilities.GetMailboxOwnerDisplayName((MailboxSession)owaStoreObjectId.GetSession(userContext)))); } else { this.folderEncodedDisplayName = Utilities.SanitizeHtmlEncode(folder.DisplayName); } this.isSharedFolder = (owaStoreObjectId != null && owaStoreObjectId.IsOtherMailbox); this.isPublicFolder = owaStoreObjectId.IsPublic; if (this.isSharedFolder) { this.folderOwnerEncodedName = Utilities.SanitizeHtmlEncode(Utilities.GetFolderOwnerExchangePrincipal(owaStoreObjectId, userContext).MailboxInfo.DisplayName); } this.containerClass = folder.GetValueOrDefault <string>(StoreObjectSchema.ContainerClass, "IPF.Appointment"); }
private static FolderTreeDataFlags ReadSharingFlags(CalendarFolder calendarFolder) { ExtendedFolderFlags valueOrDefault = calendarFolder.GetValueOrDefault <ExtendedFolderFlags>(FolderSchema.ExtendedFolderFlags); FolderTreeDataFlags folderTreeDataFlags = FolderTreeDataFlags.None; foreach (ExtendedFolderFlags extendedFolderFlags in CalendarGroupEntry.mapExtendedFolderToSharingFlag.Keys) { if ((valueOrDefault & extendedFolderFlags) == extendedFolderFlags) { folderTreeDataFlags |= CalendarGroupEntry.mapExtendedFolderToSharingFlag[extendedFolderFlags]; } } return(folderTreeDataFlags); }