public List <Item> ReadItems(SocialMediaPost post) { List <Item> usedItems = new List <Item>(); foreach (var item in ctx.Items.ToList <Item>()) { if (item.Name.ToUpper() == post.Politician[1].ToUpper()) { usedItems.Add(item); } foreach (var hashtag in post.Hashtags) { if (item.Name.ToUpper() == hashtag.ToUpper()) { usedItems.Add(item); } } foreach (var word in post.Words) { if (item.Name.ToUpper() == word.ToUpper()) { usedItems.Add(item); } } } return(usedItems); }
public List <Item> CreatePosts() { SocialMediaPost tempPost = socialMediaRepository.GetLastQueryDate(); string date; if (tempPost != null) { date = tempPost.Date.Day + " " + GetMonthFromInt(tempPost.Date.Month) + " " + tempPost.Date.Year + " " + tempPost.Date.Hour + ":" + tempPost.Date.Minute + ":" + tempPost.Date.Second; } else { DateTime start = DateTime.Now.AddDays(-(settingsManager.GetSettings().DataLifetime)); date = start.Day + " " + GetMonthFromInt(start.Month) + " " + start.Year + " " + start.Hour + ":" + start.Minute + ":" + start.Second; } List <SocialMediaPost> data2 = (List <SocialMediaPost>)read.ReadData(date); foreach (var item in data2) { ArraysToLists(item); socialMediaRepository.CreateSocialMediaPost(item); socialMediaRepository.AddPostToItems(item); } return(itemManager.GetAllItemsFromPosts(data2)); }
public void DeleteSocialMediaPost(int postId) { SocialMediaPost socialMediaPost = ctx.SocialMediaPosts.Find(postId); ctx.SocialMediaPosts.Remove(socialMediaPost); ctx.SaveChanges(); }
public List <Item> ReadItems(SocialMediaPost post) { post.ListsToArrays(); List <Item> usedItems = new List <Item>(); foreach (var item in ctx.Items.ToList <Item>()) { if (item.Name.ToUpper() == post.Person[0].ToUpper()) { usedItems.Add(item); } foreach (var hashtag in post.Hashtag) { if (item.Name.ToUpper() == hashtag.ToUpper()) { if (item.Name.ToUpper() == post.Persons.First().ToString().ToUpper()) { usedItems.Add(item); } } } foreach (var word in post.Word) { if (item.Name.ToUpper() == word.ToUpper()) { usedItems.Add(item); } } } return(usedItems); }
public Boolean IsPostFromOrganization(SocialMediaPost post, Organization item) { foreach (var person in item.Persons) { if (person.Organization != null && person.Organization.Name.Equals(item.Name)) { return(true); } } return(false); }
public Boolean IsPostFromPerson(SocialMediaPost post, Person item) { if (post.Persons.Any(p => p.Name.Contains(item.Name))) { return(true); } else { return(false); } }
public List <SocialMediaProfile> GetProfile(SocialMediaPost post) { List <SocialMediaProfile> tempprofiles = new List <SocialMediaProfile>(); foreach (var profile in ctx.SocialMediaProfiles.ToList <SocialMediaProfile>()) { if (profile.Item.Name == post.Person[1]) { tempprofiles.Add(profile); } } return(tempprofiles); }
public SocialMediaPost CreateSocialMediaPost(SocialMediaPost socialMediaPost) { if (!ctx.SocialMediaPosts.Any(s => s.PostId == socialMediaPost.PostId)) { ctx.SocialMediaPosts.Add(socialMediaPost); ctx.SaveChanges(); return(socialMediaPost); } else { return(null); } }
public void AddPostToItems(SocialMediaPost post) { foreach (var person in post.Persons) { person.SocialMediaPosts.Add(post); ctx.Entry(person).State = System.Data.Entity.EntityState.Modified; } foreach (var theme in post.Themes) { theme.SocialMediaPosts.Add(post); ctx.Entry(theme).State = System.Data.Entity.EntityState.Modified; } ctx.SaveChanges(); }
public Boolean ArraysToLists(SocialMediaPost post) { if (post.Sentiment.Count() > 0) { post.PostSentiment = new Sentiment(post.Sentiment[0], post.Sentiment[1]); post.Sentiment = null; } foreach (var item in post.Hashtag) { if (item != null) { post.Hashtags.Add(new Hashtag(item)); } } post.Hashtag = null; foreach (var item in post.Verhaal) { if (item != null) { post.Urls.Add(new Url(item)); } } post.Verhaal = null; foreach (var item in post.Word) { if (item != null) { post.Words.Add(new Word(item)); } } post.Word = null; foreach (var item in post.Person) { if (item != null) { post.Persons.Add(itemManager.CreatePersonIfNotExists(item)); } } foreach (var item in post.Theme) { if (item != null) { post.Themes.Add(new Theme(item)); } } post.Theme = null; return(true); }
public Boolean IsPostFromTheme(SocialMediaPost post, Theme item) { if (post.Themes.Any(i => i.Name.Equals(item.Name))) { return(true); } else { foreach (var word in item.Keywords) { if (post.Words.Any(w => w.Value == word.Value) || post.Hashtags.Any(w => w.Value == word.Value)) { return(true); } } } return(false); }
public void postMethod([FromBody] SocialMediaPost post) { //Get Storage account var connectionString = _config.GetValue <string>("ConnectionStrings:StorageAccount"); var csa = CloudStorageAccount.Parse(connectionString); var queueclient = csa.CreateCloudQueueClient(); //Create queue var queueRef = queueclient.GetQueueReference("socialmediaposts"); queueRef.CreateIfNotExists(); //Add message to queue var postAsJson = JsonConvert.SerializeObject(post); var qm = new CloudQueueMessage(postAsJson); queueRef.AddMessage(qm); }
public IActionResult AddSocialMediaPost(Models.SocialMediaPost socialMediaPost) { try { if (socialMediaPost.Id != Guid.Empty) { throw new ValidationException("Invalid parameter (id)"); } var dbPost = new SocialMediaPost { IsActive = true }; socialMediaPost.Id = Guid.NewGuid(); socialMediaPost.Timestamp = DateTime.Now; dbContext.Entry(dbPost).CurrentValues.SetValues(socialMediaPost); dbContext.SocialMediaPost.Add(dbPost); dbContext.SaveChanges(); return(CreatedAtRoute("GetSocialMediaPost", new { id = dbPost.Id }, mapper.Map <Models.SocialMediaPost>(dbPost))); } catch (Exception ex) { return(BadRequest("Failed to create social media post", ex)); } }
public void UpdateSocialMediaPost(SocialMediaPost socialMediaPost) { ctx.Set <SocialMediaPost>().AddOrUpdate(socialMediaPost); ctx.SaveChanges(); }
public void UpdateSocialMediaPost(SocialMediaPost socialMediaPost) { ctx.Entry(socialMediaPost).State = System.Data.Entity.EntityState.Modified; ctx.SaveChanges(); }
public SocialMediaPost CreateSocialMediaPost(SocialMediaPost socialMediaPost) { ctx.SocialMediaPosts.Add(socialMediaPost); ctx.SaveChanges(); return(socialMediaPost); }