public void CreateNewSyndicationItem(string title, string content, string url, NewsTypeContract itemType, string username) { m_authorizationManager.CheckUserCanAddNews(); if (string.IsNullOrWhiteSpace(username)) { throw new ArgumentException("Username is empty, cannot add bookmark"); } User user = m_userRepository.FindByUserName(username); if (user == null) { throw new ArgumentException(string.Format("Cannot locate user by username: '******'", username)); } NewsSyndicationItem syndicationItem = new NewsSyndicationItem { CreateDate = DateTime.UtcNow, Title = title, Url = url, Text = content, ItemType = Mapper.Map <SyndicationItemType>(itemType), User = user, }; m_repository.Save(syndicationItem); }
protected override long ExecuteWorkImplementation() { // TODO add authorization //m_authorizationManager.CheckUserCanAddNews(); //if (string.IsNullOrWhiteSpace(username)) // throw new ArgumentException("Username is empty, cannot add bookmark"); var now = DateTime.UtcNow; var user = m_portalRepository.Load <User>(m_userId); var itemType = m_mapper.Map <SyndicationItemType>(m_data.ItemType); var portalType = m_mapper.Map <PortalTypeEnum>(m_data.PortalType); var syndicationItem = new NewsSyndicationItem { CreateTime = now, Title = m_data.Title, Url = m_data.Url, Text = m_data.Text, ItemType = itemType, PortalType = portalType, User = user, }; var resultId = (long)m_portalRepository.Create(syndicationItem); return(resultId); }