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();
        }
Example #4
0
        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);
 }
Example #12
0
        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);
        }
Example #13
0
 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);
 }