// Token: 0x0600036E RID: 878 RVA: 0x0000D874 File Offset: 0x0000BA74 protected void UpdateAppsLinks(NavBarData navBarData, AuthZClientInfo effectiveCaller) { string domain = string.Empty; if (navBarData.AppsLinks == null) { return; } if (effectiveCaller != null && !string.IsNullOrWhiteSpace(effectiveCaller.PrimarySmtpAddress)) { SmtpAddress smtpAddress = new SmtpAddress(effectiveCaller.PrimarySmtpAddress); if (smtpAddress.IsValidAddress) { domain = smtpAddress.Domain; } } string deploymentId = ExtensionDataHelper.GetDeploymentId(domain); List <NavBarLinkData> list = new List <NavBarLinkData>(navBarData.AppsLinks.Length); NavBarLinkData[] appsLinks = navBarData.AppsLinks; int i = 0; while (i < appsLinks.Length) { NavBarLinkData navBarLinkData = appsLinks[i]; if ("ShellMarketplace".Equals(navBarLinkData.Id, StringComparison.Ordinal)) { if (Globals.IsPreCheckinApp) { navBarLinkData.Url = ExtensionData.GetClientExtensionMarketplaceUrl(this.culture.LCID, HttpContext.Current.Request, false, deploymentId, null); navBarLinkData.TargetWindow = "_blank"; goto IL_169; } ExchangeRunspaceConfiguration exchangeRunspaceConfiguration = ExchangeRunspaceConfigurationCache.Singleton.Get(effectiveCaller, null, false); if (exchangeRunspaceConfiguration.HasRoleOfType(RoleType.MyMarketplaceApps) && (string.IsNullOrWhiteSpace(ConfigurationManager.AppSettings["OfficeStoreUnavailable"]) || StringComparer.OrdinalIgnoreCase.Equals("false", ConfigurationManager.AppSettings["OfficeStoreUnavailable"]))) { navBarLinkData.Url = ExtensionData.GetClientExtensionMarketplaceUrl(this.culture.LCID, HttpContext.Current.Request, exchangeRunspaceConfiguration.HasRoleOfType(RoleType.MyReadWriteMailboxApps), deploymentId, null); navBarLinkData.TargetWindow = "_blank"; goto IL_169; } } else { if ("ShellOfficeDotCom".Equals(navBarLinkData.Id, StringComparison.Ordinal)) { navBarLinkData.TargetWindow = "_blank"; goto IL_169; } goto IL_169; } IL_171: i++; continue; IL_169: list.Add(navBarLinkData); goto IL_171; } navBarData.AppsLinks = list.ToArray(); }
private void UpdateAppsLinks() { if (this.navBarPack.NavBarData.AppsLinks == null) { return; } List <NavBarLinkData> list = new List <NavBarLinkData>(this.navBarPack.NavBarData.AppsLinks.Length); NavBarLinkData[] appsLinks = this.navBarPack.NavBarData.AppsLinks; int i = 0; while (i < appsLinks.Length) { NavBarLinkData navBarLinkData = appsLinks[i]; if ("ShellMarketplace".Equals(navBarLinkData.Id, StringComparison.Ordinal)) { ExchangeRunspaceConfiguration rbacConfiguration = RbacPrincipal.Current.RbacConfiguration; if (rbacConfiguration.HasRoleOfType(RoleType.MyMarketplaceApps) && OfficeStoreAvailableQueryProcessor.IsOfficeStoreAvailable) { navBarLinkData.Url = ExtensionData.GetClientExtensionMarketplaceUrl(CultureInfo.CurrentCulture.LCID, rbacConfiguration.HasRoleOfType(RoleType.MyReadWriteMailboxApps), this.showAdminFeature ? ExtensionUtility.UrlEncodedOfficeCallBackUrlForOrg : ExtensionUtility.UrlEncodedOfficeCallBackUrl, ExtensionUtility.DeploymentId, null); navBarLinkData.TargetWindow = "_blank"; goto IL_DA; } } else { if ("ShellOfficeDotCom".Equals(navBarLinkData.Id, StringComparison.Ordinal)) { navBarLinkData.TargetWindow = "_blank"; goto IL_DA; } goto IL_DA; } IL_E1: i++; continue; IL_DA: list.Add(navBarLinkData); goto IL_E1; } this.navBarPack.NavBarData.AppsLinks = list.ToArray(); }
private void AddCustomSubLinks(bool isMockObject) { NavBarLinkData[] currentWorkloadUserSubLinks = null; if (this.showAdminFeature) { this.navBarPack.FeatureSet = "myorg"; this.navBarPack.NavBarData.CurrentMainLinkElementID = "ShellAdmin"; if (this.rbacPrincipal.IsInRole("UserOptions+OrgMgmControlPanel")) { currentWorkloadUserSubLinks = new NavBarLinkData[] { MockNavBar.CreateLink("eso_O365L", Strings.EntryOnBehalfOf, null, null) }; } } else { this.navBarPack.FeatureSet = "myself"; this.navBarPack.NavBarData.CurrentMainLinkElementID = "ShellOutlook"; if (isMockObject && NavigationUtil.ShouldRenderOwaLink(this.rbacPrincipal, this.showAdminFeature)) { NavBarLinkData[] workloadLinks = new NavBarLinkData[] { MockNavBar.CreateLink("ShellOutlook", Strings.NavBarMail, EcpUrl.OwaVDir, null) }; this.navBarPack.NavBarData.WorkloadLinks = workloadLinks; } } this.navBarPack.NavBarData.CurrentWorkloadUserSubLinks = currentWorkloadUserSubLinks; List <NavBarLinkData> list = new List <NavBarLinkData>(); string flightName = this.navBarPack.NavBarData.FlightName; if (!string.IsNullOrEmpty(flightName) && flightName.Contains("GeminiShellUX")) { this.navBarPack.HelpParameters = this.navBarPack.NavBarData.HelpLink.Url; this.navBarPack.NavBarData.HelpLink.Id = (this.showAdminFeature ? "openHelp_O365L" : "openOptionHelp_O365L"); this.navBarPack.NavBarData.HelpLink.Url = HelpUtil.BuildEhcHref(this.showAdminFeature ? EACHelpId.Default.ToString() : OptionsHelpId.OwaOptionsDefault.ToString()); } else if (this.showAdminFeature) { list.Add(MockNavBar.CreateLink("openHelp_O365L", Strings.Help, HelpUtil.BuildEhcHref(EACHelpId.Default.ToString()), null)); } else { list.Add(MockNavBar.CreateLink("openOptionHelp_O365L", Strings.Help, HelpUtil.BuildEhcHref(OptionsHelpId.OwaOptionsDefault.ToString()), null)); } HttpCookie httpCookie = HttpContext.Current.Request.Cookies["msExchEcpFvaHelp"]; bool flag = httpCookie != null && httpCookie.Value != null && httpCookie.Value.StartsWith("0"); list.Add(MockNavBar.CreateLink("toggleFVA_O365L", flag ? ClientStrings.EnableFVA : ClientStrings.DisableFVA, null, null)); if (NavBarClientBase.showPerfConsole) { list.Add(MockNavBar.CreateLink("perfConsole_O365L", Strings.PerformanceConsole, null, null)); } if (this.showAdminFeature && EacFlightUtility.GetSnapshotForCurrentUser().Eac.CmdletLogging.Enabled) { list.Add(MockNavBar.CreateLink("cmdletLogging_O365L", Strings.CmdLogButtonText, null, null)); } this.navBarPack.NavBarData.CurrentWorkloadHelpSubLinks = list.ToArray(); if (this.isGallatin && this.navBarPack.NavBarData.FooterICPLink != null) { if (!string.IsNullOrEmpty(this.navBarPack.NavBarData.FooterICPLink.Text)) { this.navBarPack.NavBarData.FooterICPLink.Text = this.navBarPack.NavBarData.FooterICPLink.Text.Replace("-10", "-22"); } if (!string.IsNullOrEmpty(this.navBarPack.NavBarData.FooterICPLink.Title)) { this.navBarPack.NavBarData.FooterICPLink.Title = this.navBarPack.NavBarData.FooterICPLink.Title.Replace("-10", "-22"); } } }