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(); } }
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}" })); }
public Deal GetDealByRecordNumber(string recordNumber) { return(_cache.GetFromCache($"DCDManager:GetDealByRecordNumber:{recordNumber}", _timeSpan, () => _reader.GetDealByRecordNumber(recordNumber))); }