コード例 #1
0
        private object SetupXMatterList()
        {
            var xmatterOfferings = new List <object>();

            string xmatterKeyForcedByBranding = _collectionSettings.GetXMatterPackNameSpecifiedByBrandingOrNull();

            var offerings = _xmatterPackFinder.GetXMattersToOfferInSettings(xmatterKeyForcedByBranding);

            foreach (var pack in offerings)
            {
                var labelToShow = LocalizationManager.GetDynamicString("Bloom", "CollectionSettingsDialog.BookMakingTab.Front/BackMatterPack." + pack.EnglishLabel, pack.EnglishLabel, "Name of a Front/Back Matter Pack");
                var description = pack.GetDescription();                 // already localized, if available
                var item        = new { displayName = labelToShow, internalName = pack.Key, description };
                xmatterOfferings.Add(item);
            }

            // This will switch to the default factory xmatter if the current one is not valid.
            var currentXmatter =
                _xmatterPackFinder.GetValidXmatter(xmatterKeyForcedByBranding, _collectionSettings.XMatterPackName);

            return(new { currentXmatter, xmatterOfferings = xmatterOfferings.ToArray() });
        }