예제 #1
0
        // Token: 0x06001A0D RID: 6669 RVA: 0x0009688C File Offset: 0x00094A8C
        public AboutDetails(OwaContext owaContext)
        {
            this.details = new List <AboutDetails.Detail>();
            HttpRequest request     = owaContext.HttpContext.Request;
            UserContext userContext = owaContext.UserContext;
            ITopologyConfigurationSession topologyConfigurationSession = Utilities.CreateADSystemConfigurationSessionScopedToFirstOrg(true, ConsistencyMode.IgnoreInvalid);
            Server server   = topologyConfigurationSession.FindLocalServer();
            string format   = "{0} [{1}]";
            string newValue = string.Format(format, userContext.MailboxIdentity.GetOWAMiniRecipient().DisplayName, userContext.MailboxIdentity.GetOWAMiniRecipient().PrimarySmtpAddress);

            this.details.Add(new AboutDetails.Detail(1932854157, newValue));
            if (userContext.MailboxIdentity != userContext.LogonIdentity)
            {
                newValue = string.Format(format, userContext.LogonIdentity.SafeGetRenderableName(), userContext.LogonIdentity.CreateADRecipientBySid().PrimarySmtpAddress);
                this.details.Add(new AboutDetails.Detail(-326055478, newValue));
            }
            this.details.Add(new AboutDetails.Detail(702028774, request.UserAgent));
            this.details.Add(new AboutDetails.Detail(1313983647, null, "spnSilverlight"));
            this.details.Add(new AboutDetails.Detail(-1008891981, "2.0.31005.0"));
            this.details.Add(new AboutDetails.Detail(287279379, userContext.Experiences[0].Name));
            this.details.Add(new AboutDetails.Detail(-580409853, AboutDetails.GetUserLanguage()));
            this.details.Add(new AboutDetails.Detail(-2080731678, AboutDetails.GetUserTimeZone(userContext)));
            this.details.Add(new AboutDetails.Detail(-2119715555, userContext.MailboxSession.MailboxOwner.LegacyDn));
            this.details.Add(new AboutDetails.Detail(1242327, owaContext.LocalHostName));
            this.details.Add(new AboutDetails.Detail(-443267801, Globals.ApplicationVersion));
            if (owaContext.IsProxyRequest)
            {
                this.details.Add(new AboutDetails.Detail(-115535529, owaContext.ProxyCasUri.ToString()));
                this.details.Add(new AboutDetails.Detail(1033866607, owaContext.ProxyCasVersion.ToString()));
                this.details.Add(new AboutDetails.Detail(1725379342, owaContext.ProxyCasUri.Host));
            }
            else
            {
                this.details.Add(new AboutDetails.Detail(-1140953118, request.ServerVariables["SERVER_NAME"]));
            }
            if (!userContext.IsBasicExperience && Utilities.IsSMimeFeatureUsable(owaContext))
            {
                this.details.Add(new AboutDetails.Detail(-536214884, null, "dvMmVer"));
                if (OwaRegistryKeys.AllowUserChoiceOfSigningCertificate)
                {
                    string text;
                    if (userContext.UserOptions.UseManuallyPickedSigningCertificate)
                    {
                        text = AboutDetails.FormatSigningCertificateId(userContext);
                    }
                    else
                    {
                        text = LocalizedStrings.GetNonEncoded(850704157);
                    }
                    if (!string.IsNullOrEmpty(text))
                    {
                        this.details.Add(new AboutDetails.Detail(2075380721, text));
                    }
                }
            }
            this.details.Add(new AboutDetails.Detail(585827348, server.Fqdn));
            this.details.Add(new AboutDetails.Detail(1747010592, Environment.Version.ToString()));
            this.details.Add(new AboutDetails.Detail(-1210690029, Environment.OSVersion.ToString()));
            string text2 = CultureInfo.InstalledUICulture.IetfLanguageTag;

            if (string.IsNullOrEmpty(text2))
            {
                text2 = string.Empty;
            }
            this.details.Add(new AboutDetails.Detail(1325823303, text2));
            ServerVersion serverVersion = ServerVersion.CreateFromVersionNumber(server.VersionNumber);

            this.details.Add(new AboutDetails.Detail(36884659, serverVersion.ToString()));
            string text3 = Globals.ServerCulture.IetfLanguageTag;

            if (string.IsNullOrEmpty(text3))
            {
                text3 = string.Empty;
            }
            this.details.Add(new AboutDetails.Detail(2002567151, text3));
            this.details.Add(new AboutDetails.Detail(-983285290, ExTimeZone.CurrentTimeZone.LocalizableDisplayName.ToString(Thread.CurrentThread.CurrentUICulture)));
            this.details.Add(new AboutDetails.Detail(-967424827, AboutDetails.GetCASFlavor()));
            this.details.Add(new AboutDetails.Detail(1832080745, userContext.MailboxSession.MailboxOwner.MailboxInfo.Location.ServerFqdn));
            serverVersion = ServerVersion.CreateFromVersionNumber(userContext.MailboxSession.MailboxOwner.MailboxInfo.Location.ServerVersion);
            this.details.Add(new AboutDetails.Detail(-764368819, serverVersion.ToString()));
            this.details.Add(new AboutDetails.Detail(584845051, AboutDetails.GetCASRoles(server)));
            this.details.Add(new AboutDetails.Detail(1023146649, owaContext.UserContext.LogonIdentity.AuthenticationType));
            if (owaContext.IsProxyRequest)
            {
                this.details.Add(new AboutDetails.Detail(-1163209895, owaContext.HttpContext.User.Identity.AuthenticationType));
            }
            this.details.Add(new AboutDetails.Detail(33982382, owaContext.UserContext.IsPublicLogon ? LocalizedStrings.GetNonEncoded(-1273337393) : LocalizedStrings.GetNonEncoded(1496915101)));
            bool flag = !VariantConfiguration.GetSnapshot(MachineSettingsContext.Local, null, null).OwaDeployment.HideInternalUrls.Enabled;

            this.AddEndpointSettings(ServiceType.Pop3, true);
            if (flag)
            {
                this.AddEndpointSettings(ServiceType.Pop3, false);
            }
            this.AddEndpointSettings(ServiceType.Imap4, true);
            if (flag)
            {
                this.AddEndpointSettings(ServiceType.Imap4, false);
            }
            this.AddEndpointSettings(ServiceType.Smtp, true);
            if (flag)
            {
                this.AddEndpointSettings(ServiceType.Smtp, false);
            }
            if (!owaContext.UserContext.IsBasicExperience && FormsRegistryManager.HasCustomForm)
            {
                this.details.Add(new AboutDetails.Detail(-308367532, LocalizedStrings.GetNonEncoded(-761624927)));
            }
            this.details.Add(new AboutDetails.Detail(2084940277, userContext.SegmentationFlags.ToString("x")));
            this.details.Add(new AboutDetails.Detail(1383125876, userContext.RestrictedCapabilitiesFlags.ToString("x")));
        }