Пример #1
0
        public CompaniesandDealsShareViewModel(
            ITextTranslator textTranslator,
            IDCDReader dcdReader,
            IHttpContextProvider context,
            I___BasePage glassModel,
            IAuthenticatedUserContext userContext)
        {
            TextTranslator      = textTranslator;
            DCDReader           = dcdReader;
            HttpContextProvider = context;
            UserContext         = userContext;

            var wildcardValue = UrlUtils.GetLastUrlSement(HttpContextProvider.Current);

            if (glassModel._TemplateId.Equals(ICompany_PageConstants.TemplateId.Guid))
            {
                var Company = DCDReader.GetCompanyByRecordNumber(wildcardValue);
                PageTitle = Company.Title;
                CompanyId = Company.RecordNumber.ToString();
            }
            else if (glassModel._TemplateId.Equals(IDeal_PageConstants.TemplateId.Guid))
            {
                var Deal = DCDReader.GetDealByRecordNumber(wildcardValue);
                PageTitle = Deal.Title;
                DealId    = Deal.RecordNumber.ToString();
            }
        }
Пример #2
0
        public IEnumerable <Link> GetRelatedDeals(IArticle article)
        {
            var dealIds = article?.Referenced_Deals?.Split(',') ?? new string[0];

            return(dealIds.Where(id => !string.IsNullOrEmpty(id)).Select(id => _reader.GetDealByRecordNumber(id)).Select(c => new Link
            {
                Text = c.Title,
                Url = $"{SiteRootContext.Item?._Url}deals/{c.RecordNumber}"
            }));
        }
Пример #3
0
 public Deal GetDealByRecordNumber(string recordNumber)
 {
     return(_cache.GetFromCache($"DCDManager:GetDealByRecordNumber:{recordNumber}", _timeSpan, () => _reader.GetDealByRecordNumber(recordNumber)));
 }