// Token: 0x06000818 RID: 2072 RVA: 0x0003BA7C File Offset: 0x00039C7C internal Configuration(IConfigurationSession session, string virtualDirectory, string webSiteName, ADObjectId vDirADObjectId, bool isPhoneticSupportEnabled) { base.PhoneticSupportEnabled = isPhoneticSupportEnabled; if (Globals.IsPreCheckinApp) { this.ExpirationTime = DateTime.UtcNow + Configuration.expirationPeriod; this.LoadPreCheckInVdirConfiguration(); return; } ADOwaVirtualDirectory adowaVirtualDirectory = session.Read <ADOwaVirtualDirectory>(vDirADObjectId); if (adowaVirtualDirectory == null) { string message = string.Format(LocalizedStrings.GetNonEncoded(-1166886287), virtualDirectory, webSiteName); throw new OwaInvalidConfigurationException(message); } this.formsAuthenticationEnabled = (adowaVirtualDirectory.InternalAuthenticationMethods.Contains(AuthenticationMethod.Fba) ? 1 : 0); AttachmentPolicy.Level treatUnknownTypeAs = ConfigurationBase.AttachmentActionToLevel(adowaVirtualDirectory.ActionForUnknownFileAndMIMETypes); AttachmentPolicy attachmentPolicy = new AttachmentPolicy(adowaVirtualDirectory.BlockedFileTypes.ToArray(), adowaVirtualDirectory.BlockedMimeTypes.ToArray(), adowaVirtualDirectory.ForceSaveFileTypes.ToArray(), adowaVirtualDirectory.ForceSaveMimeTypes.ToArray(), adowaVirtualDirectory.AllowedFileTypes.ToArray(), adowaVirtualDirectory.AllowedMimeTypes.ToArray(), treatUnknownTypeAs, adowaVirtualDirectory.DirectFileAccessOnPublicComputersEnabled.Value, adowaVirtualDirectory.DirectFileAccessOnPrivateComputersEnabled.Value, adowaVirtualDirectory.ForceWebReadyDocumentViewingFirstOnPublicComputers.Value, adowaVirtualDirectory.ForceWebReadyDocumentViewingFirstOnPrivateComputers.Value, adowaVirtualDirectory.WebReadyDocumentViewingOnPublicComputersEnabled.Value, adowaVirtualDirectory.WebReadyDocumentViewingOnPrivateComputersEnabled.Value, adowaVirtualDirectory.WebReadyFileTypes.ToArray(), adowaVirtualDirectory.WebReadyMimeTypes.ToArray(), adowaVirtualDirectory.WebReadyDocumentViewingSupportedFileTypes.ToArray(), adowaVirtualDirectory.WebReadyDocumentViewingSupportedMimeTypes.ToArray(), adowaVirtualDirectory.WebReadyDocumentViewingForAllSupportedTypes.Value); base.AttachmentPolicy = attachmentPolicy; base.DefaultClientLanguage = adowaVirtualDirectory.DefaultClientLanguage.Value; this.filterWebBeaconsAndHtmlForms = adowaVirtualDirectory.FilterWebBeaconsAndHtmlForms.Value; base.LogonAndErrorLanguage = adowaVirtualDirectory.LogonAndErrorLanguage; this.logonFormat = adowaVirtualDirectory.LogonFormat; this.defaultDomain = adowaVirtualDirectory.DefaultDomain; this.notificationInterval = (adowaVirtualDirectory.NotificationInterval ?? 120); this.sessionTimeout = (adowaVirtualDirectory.UserContextTimeout ?? 60); this.redirectToOptimalOWAServer = (adowaVirtualDirectory.RedirectToOptimalOWAServer == true); base.DefaultTheme = adowaVirtualDirectory.DefaultTheme; base.SetPhotoURL = adowaVirtualDirectory.SetPhotoURL; this.clientAuthCleanupLevel = adowaVirtualDirectory.ClientAuthCleanupLevel; this.imCertificateThumbprint = adowaVirtualDirectory.InstantMessagingCertificateThumbprint; this.imServerName = adowaVirtualDirectory.InstantMessagingServerName; this.isSMimeEnabledOnCurrentServerr = (adowaVirtualDirectory.SMimeEnabled ?? false); this.documentAccessAllowedServers = adowaVirtualDirectory.RemoteDocumentsAllowedServers.ToArray(); this.documentAccessBlockedServers = adowaVirtualDirectory.RemoteDocumentsBlockedServers.ToArray(); this.documentAccessInternalDomainSuffixList = adowaVirtualDirectory.RemoteDocumentsInternalDomainSuffixList.ToArray(); RemoteDocumentsActions?remoteDocumentsActions = adowaVirtualDirectory.RemoteDocumentsActionForUnknownServers; if (remoteDocumentsActions != null) { if (remoteDocumentsActions == RemoteDocumentsActions.Allow) { this.remoteDocumentsActionForUnknownServers = RemoteDocumentsActions.Allow; } else { this.remoteDocumentsActionForUnknownServers = RemoteDocumentsActions.Block; } } base.InternalAuthenticationMethod = ConfigurationBase.GetAuthenticationMethod(adowaVirtualDirectory[ADVirtualDirectorySchema.InternalAuthenticationMethodFlags]); base.ExternalAuthenticationMethod = ConfigurationBase.GetAuthenticationMethod(adowaVirtualDirectory[ADVirtualDirectorySchema.ExternalAuthenticationMethodFlags]); base.Exchange2003Url = adowaVirtualDirectory.Exchange2003Url; base.LegacyRedirectType = LegacyRedirectTypeOptions.Silent; int segmentationBits = (int)adowaVirtualDirectory[ADOwaVirtualDirectorySchema.ADMailboxFolderSet]; int segmentationBits2 = (int)adowaVirtualDirectory[ADOwaVirtualDirectorySchema.ADMailboxFolderSet2]; base.SegmentationFlags = Utilities.SetSegmentationFlags(segmentationBits, segmentationBits2); if (adowaVirtualDirectory.OutboundCharset != null) { base.OutboundCharset = adowaVirtualDirectory.OutboundCharset.Value; } if (adowaVirtualDirectory.UseGB18030 != null && adowaVirtualDirectory.UseGB18030.Value) { base.UseGB18030 = true; } else { base.UseGB18030 = false; } if (adowaVirtualDirectory.UseISO885915 != null && adowaVirtualDirectory.UseISO885915.Value) { base.UseISO885915 = true; } else { base.UseISO885915 = false; } base.InstantMessagingType = ((adowaVirtualDirectory.InstantMessagingType != null) ? adowaVirtualDirectory.InstantMessagingType.Value : InstantMessagingTypeOptions.None); this.defaultAcceptedDomain = session.GetDefaultAcceptedDomain(); this.publicFoldersEnabledOnThisVdir = (adowaVirtualDirectory.PublicFoldersEnabled ?? false); this.ExpirationTime = DateTime.UtcNow + Configuration.expirationPeriod; OwaDiagnostics.LogEvent(ClientsEventLogConstants.Tuple_ConfigurationSettingsUpdated, string.Empty, new object[] { virtualDirectory, webSiteName }); }