Exemplo n.º 1
0
        public void CreateHtmlAnchor_Test()
        {
            var text     = "@twitterapi #BreakingMyTwitter https://t.co/mIJcSoVSK3";
            var entities = new TwitterEntities
            {
                UserMentions = new[]
                {
                    new TwitterEntityMention {
                        Indices = new[] { 0, 11 }, ScreenName = "twitterapi"
                    },
                },
                Hashtags = new[]
                {
                    new TwitterEntityHashtag {
                        Indices = new[] { 12, 30 }, Text = "BreakingMyTwitter"
                    },
                },
                Urls = new[]
                {
                    new TwitterEntityUrl
                    {
                        Indices     = new[] { 31, 54 },
                        Url         = "https://t.co/mIJcSoVSK3",
                        DisplayUrl  = "apps-of-a-feather.com",
                        ExpandedUrl = "http://apps-of-a-feather.com/",
                    },
                },
            };

            var expectedHtml = @"<a class=""mention"" href=""https://twitter.com/twitterapi"">@twitterapi</a>"
                               + @" <a class=""hashtag"" href=""https://twitter.com/search?q=%23BreakingMyTwitter"">#BreakingMyTwitter</a>"
                               + @" <a href=""https://t.co/mIJcSoVSK3"" title=""https://t.co/mIJcSoVSK3"">apps-of-a-feather.com</a>";

            Assert.Equal(expectedHtml, Twitter.CreateHtmlAnchor(text, entities, quotedStatusLink: null));
        }
Exemplo n.º 2
0
        protected void ButtonCreateMessage_Click(object sender, EventArgs e)
        {
            try
            {
                int channelId = Convert.ToInt32(this.DropDownListChannels.SelectedValue);

                TwitterEntities context = new TwitterEntities();
                Message         msg     = new Message();
                Channel         channel = context.Channels.Find(channelId);

                msg.Channel = channel;
                string msgText = MessageContent.Text;

                Verificator.ValidateMessage(msgText);

                msg.MessageContent = msgText;
                var currentUserName = this.User.Identity.Name;
                var author          = context.AspNetUsers.FirstOrDefault(x => x.UserName == currentUserName);

                msg.AspNetUser = author;
                msg.Date       = DateTime.Now;
                context.Messages.Add(msg);
                context.SaveChanges();
                ErrorSuccessNotifier.AddSuccessMessage("Message created successfully.");
                ErrorSuccessNotifier.ShowAfterRedirect = true;
                Response.Redirect("ChannelMessages.aspx?channelId=" + channelId, false);
            }
            catch (Exception ex)
            {
                ErrorSuccessNotifier.AddErrorMessage(ex);
            }
        }
Exemplo n.º 3
0
        protected void ButtonCreateChannel_Click(object sender, EventArgs e)
        {
            try
            {
                TwitterEntities context         = new TwitterEntities();
                Channel         channel         = new Channel();
                var             currentUserName = this.User.Identity.Name;
                var             author          = context.AspNetUsers.FirstOrDefault(x => x.UserName == currentUserName);

                Verificator.ValidateChannel(ChannelName.Text);

                channel.AspNetUser = author;
                channel.Name       = ChannelName.Text;
                context.Channels.Add(channel);
                context.SaveChanges();

                ErrorSuccessNotifier.AddSuccessMessage("Channel created successfully.");
                ErrorSuccessNotifier.ShowAfterRedirect = true;

                Response.Redirect("../Messages/ChannelMessages.aspx?channelId=" + channel.ChannelId, false);
            }
            catch (Exception ex)
            {
                ErrorSuccessNotifier.AddErrorMessage(ex);
            }
        }
Exemplo n.º 4
0
        private async Task SetDescriptionAsync(string descriptionText, TwitterEntities entities, CancellationToken cancellationToken)
        {
            if (descriptionText != null)
            {
                foreach (var entity in entities.Urls)
                {
                    entity.ExpandedUrl = await ShortUrl.Instance.ExpandUrlAsync(entity.ExpandedUrl);
                }

                // user.entities には urls 以外のエンティティが含まれていないため、テキストをもとに生成する
                entities.Hashtags     = TweetExtractor.ExtractHashtagEntities(descriptionText).ToArray();
                entities.UserMentions = TweetExtractor.ExtractMentionEntities(descriptionText).ToArray();

                var html = TweetFormatter.AutoLinkHtml(descriptionText, entities);
                html = this.mainForm.createDetailHtml(html);

                if (cancellationToken.IsCancellationRequested)
                {
                    return;
                }

                this.DescriptionBrowser.DocumentText = html;
            }
            else
            {
                this.DescriptionBrowser.DocumentText = "";
            }
        }
Exemplo n.º 5
0
        public void CreateAccessibleText_QuotedUrlWithPermelinkTest()
        {
            var text         = "hoge";
            var entities     = new TwitterEntities();
            var quotedStatus = new TwitterStatus
            {
                Id    = 1234567890L,
                IdStr = "1234567890",
                User  = new TwitterUser
                {
                    Id         = 1111,
                    IdStr      = "1111",
                    ScreenName = "foo",
                },
                FullText = "test",
            };
            var quotedStatusLink = new TwitterQuotedStatusPermalink
            {
                Url      = "https://t.co/hoge",
                Display  = "twitter.com/hoge/status/1…",
                Expanded = "https://twitter.com/hoge/status/1234567890",
            };

            var expectedText = "hoge " + string.Format(Properties.Resources.QuoteStatus_AccessibleText, "foo", "test");

            Assert.Equal(expectedText, Twitter.CreateAccessibleText(text, entities, quotedStatus, quotedStatusLink));
        }
Exemplo n.º 6
0
        // The id parameter name should match the DataKeyNames value set on the control
        public void GridViewMyChannels_DeleteItem(int ChannelId)
        {
            try
            {
                int channelId = ChannelId;

                TwitterEntities context = new TwitterEntities();

                var channel = context.Channels.Include("Messages").FirstOrDefault(x => x.ChannelId == channelId);

                string currentUsername = User.Identity.Name;
                if (channel.AspNetUser.UserName != currentUsername)
                {
                    throw new Exception("Different owner of the channel.");
                }

                var messages = channel.Messages;

                context.Messages.RemoveRange(messages);
                context.Channels.Remove(channel);
                context.SaveChanges();
                ErrorSuccessNotifier.AddInfoMessage("Channel successfully removed.");
            }
            catch (Exception ex)
            {
                ErrorSuccessNotifier.AddErrorMessage(ex);
            }
            //Response.Redirect(Request.RawUrl);
        }
Exemplo n.º 7
0
        public void CreateHtmlAnchor_QuotedUrlWithPermelinkTest()
        {
            var text         = "hoge";
            var entities     = new TwitterEntities();
            var quotedStatus = new TwitterStatus
            {
                Id    = 1234567890L,
                IdStr = "1234567890",
                User  = new TwitterUser
                {
                    Id         = 1111,
                    IdStr      = "1111",
                    ScreenName = "foo",
                },
                FullText = "test",
            };
            var quotedStatusLink = new TwitterQuotedStatusPermalink
            {
                Url      = "https://t.co/hoge",
                Display  = "twitter.com/hoge/status/1…",
                Expanded = "https://twitter.com/hoge/status/1234567890",
            };

            var expectedHtml = @"hoge"
                               + @" <a href=""https://t.co/hoge"" title=""https://t.co/hoge"">twitter.com/hoge/status/1…</a>";

            Assert.Equal(expectedHtml, Twitter.CreateHtmlAnchor(text, entities, quotedStatusLink));
        }
Exemplo n.º 8
0
        public List <TwitLocal> GetAllTwits(int id)
        {
            using (db = new TwitterEntities())
            {
                List <TwitLocal> twits = new List <TwitLocal>();
                foreach (var u in db.UserFollows.Where(x => x.FollowerId == id))
                {
                    foreach (var t in db.Twits.Where(x => x.UserId == u.FollowedId))
                    {
                        TwitLocal tl = new TwitLocal();
                        tl.Id      = t.Id;
                        tl.Content = t.TwitContent;
                        tl.Date    = t.Date;
                        tl.Fav     = db.TwitFavs.Count(x => x.TwitId == t.Id && x.UserId == id);

                        User user = db.Users.FirstOrDefault(x => x.Id == t.UserId);
                        tl.Username = user.Username;
                        tl.Name     = user.Name;

                        if (db.TwitFavs.Any(x => x.TwitId == t.Id && x.UserId == id))
                        {
                            tl.isFav = true;
                        }
                        else
                        {
                            tl.isFav = false;
                        }

                        twits.Add(tl);
                    }
                }

                return(twits.OrderByDescending(x => x.Id).ToList());
            }
        }
Exemplo n.º 9
0
        protected void CreateUser_Click(object sender, EventArgs e)
        {
            TwitterEntities context  = new TwitterEntities();
            string          userName = UserName.Text;
            var             manager  = new AuthenticationIdentityManager(new IdentityStore());
            User            u        = new User(userName)
            {
                UserName = userName
            };
            IdentityResult result = manager.Users.CreateLocalUser(u, Password.Text);


            var role = context.AspNetRoles.FirstOrDefault(x => x.Name == "User");


            if (result.Success)
            {
                string userId = u.Id;

                AspNetUser currentUser = context.AspNetUsers.FirstOrDefault(x => x.Id == userId);
                currentUser.AspNetRoles.Add(role);
                context.SaveChanges();

                manager.Authentication.SignIn(Context.GetOwinContext().Authentication, u.Id, isPersistent: false);
                OpenAuthProviders.RedirectToReturnUrl(Request.QueryString["ReturnUrl"], Response);
            }
            else
            {
                ErrorMessage.Text = result.Errors.FirstOrDefault();
            }
        }
        protected void UploadPicture_ServerClick(object sender, EventArgs e)
        {
            var username = User.Identity.Name;

            if ((avatarPicture.PostedFile != null) && (avatarPicture.PostedFile.ContentLength > 0))
            {
                TwitterEntities context      = new TwitterEntities();
                var             user         = context.AspNetUsers.FirstOrDefault(x => x.UserName == username);
                var             userId       = user.Id;
                string          fn           = userId + System.IO.Path.GetExtension(avatarPicture.PostedFile.FileName);
                string          SaveLocation = Server.MapPath("Data") + "\\" + fn;

                try
                {
                    avatarPicture.PostedFile.SaveAs(SaveLocation);
                    Response.Write("The file has been uploaded.");
                    user.ProfilePicture = fn;
                    context.SaveChanges();
                    Response.Write(fn);
                    Response.Redirect("Manage");
                }
                catch (Exception ex)
                {
                    Response.Write("Error: " + ex.Message);
                    //Note: Exception.Message returns a detailed message that describes the current exception.
                    //For security reasons, we do not recommend that you return Exception.Message to end users in
                    //production environments. It would be better to put a generic error message.
                }
            }
            else
            {
                Response.Write("Please select a file to upload.");
            }
        }
 public Location Get(int id)
 {
     using (var context = new TwitterEntities())
     {
         return context.Locations.SingleOrDefault(x => x.ID == id);
     }
 }
Exemplo n.º 12
0
        public IQueryable <Twitter.Models.AspNetUser> ListViewRegularUsers_GetData()
        {
            TwitterEntities context = new TwitterEntities();

            string username            = User.Identity.Name;
            HashSet <AspNetUser> users = new HashSet <AspNetUser>();

            var allUsers = context.AspNetUsers.
                           Where(x => x.UserName != username);

            foreach (AspNetUser user in allUsers)
            {
                bool isAdmin = false;
                foreach (var role in user.AspNetRoles)
                {
                    if (role.Name == "Admin")
                    {
                        isAdmin = true;
                        break;
                    }
                }

                if (!isAdmin)
                {
                    users.Add(user);
                }
            }

            return(users.AsQueryable());
        }
Exemplo n.º 13
0
        private static JToken DeserializeEntities(JToken relevant)
        {
            var results = new TwitterEntities();

            var entities = relevant["entities"];

            if (entities != null)
            {
                var mentions = entities["user_mentions"];
                if (mentions != null)
                {
                    DeserializeMentions(results, mentions);
                }

                var urls = entities["urls"];
                if (urls != null)
                {
                    DeserializeUrls(results, urls);
                }

                var hashtags = entities["hashtags"];
                if (hashtags != null)
                {
                    DeserializeHashtags(results, hashtags);
                }
            }

            if (results.Count() > 0)
            {
                var replacer = JsonConvert.SerializeObject(results);
                return(JObject.Parse(replacer));
            }

            return(null);
        }
Exemplo n.º 14
0
        // The id parameter name should match the DataKeyNames value set on the control
        public void ListViewAllUsers_UpdateItem(string Id)
        {
            TwitterEntities context = new TwitterEntities();

            Twitter.Models.AspNetUser item = null;
            // Load the item here, e.g. item = MyDataLayer.Find(id);
            item = context.AspNetUsers.Find(Id);
            if (item == null)
            {
                // The item wasn't found
                ModelState.AddModelError("", String.Format("Item with id {0} was not found", Id));
                return;
            }
            TryUpdateModel(item);
            if (ModelState.IsValid)
            {
                try
                {
                    context.SaveChanges();
                    ErrorSuccessNotifier.AddInfoMessage("User has been successfully edited");
                }
                catch (Exception ex)
                {
                    ErrorSuccessNotifier.AddErrorMessage(ex.Message);
                }

                // Save changes here, e.g. MyDataLayer.SaveChanges();
            }
        }
Exemplo n.º 15
0
        private static void DeserializeHashtags(TwitterEntities results, JToken hashtags)
        {
            var value = hashtags.ToString();

            if (value.Equals("Null", StringComparison.InvariantCultureIgnoreCase))
            {
                return;
            }
            var inner = hashtags["hashtag"];

            if (inner.Type == JTokenType.Array)
            {
                var array = JArray.Parse(inner.ToString());

                foreach (var hashtag in from item in array
                         let indices = ParseEntityIndices(item)
                                       select ParseHashTag(indices, item))
                {
                    results.HashTags.Add(hashtag);
                }
            }
            switch (inner.Type)
            {
            case JTokenType.Object:
            {
                var item    = JObject.Parse(inner.ToString());
                var indices = ParseEntityIndices(item);

                results.HashTags.Add(ParseHashTag(indices, item));
            }
            break;
            }
        }
Exemplo n.º 16
0
        private static void DeserializeMentions(TwitterEntities results, JToken mentions)
        {
            var value = mentions.ToString();

            if (value.Equals("Null", StringComparison.InvariantCultureIgnoreCase))
            {
                return;
            }
            var inner = mentions["user_mention"];

            if (inner.Type == JTokenType.Array)
            {
                var array = JArray.Parse(inner.ToString());

                foreach (var mention in from item in array
                         let indices = ParseEntityIndices(item)
                                       select ParseMention(indices, item))
                {
                    results.Mentions.Add(mention);
                }
            }
            switch (inner.Type)
            {
            case JTokenType.Object:
            {
                var item    = JObject.Parse(inner.ToString());
                var indices = ParseEntityIndices(item);

                results.Mentions.Add(ParseMention(indices, item));
            }
            break;
            }
        }
Exemplo n.º 17
0
        public IQueryable <Channel> GridViewChannels_GetData()
        {
            TwitterEntities context     = new TwitterEntities();
            string          currentUser = User.Identity.Name;

            return(context.Channels.Include("AspNetUser").OrderBy(ch => ch.ChannelId).Where(x => x.AspNetUser.UserName == currentUser));
        }
Exemplo n.º 18
0
        protected void LinkButtonUpdate_Command(object sender, CommandEventArgs e)
        {
            try
            {
                int channelId = Convert.ToInt32(e.CommandArgument);

                TwitterEntities context = new TwitterEntities();

                var channel = context.Channels.FirstOrDefault(x => x.ChannelId == channelId);
                var button  = sender as LinkButton;

                var tr = button.Parent.Parent;

                var textBox = tr.FindControl("TextBoxEditChannel") as TextBox;

                string newChannelName = textBox.Text;
                Verificator.ValidateChannel(newChannelName);
                channel.Name = newChannelName;
                context.SaveChanges();
                ErrorSuccessNotifier.AddInfoMessage("Channel name updated successfully.");
            }
            catch (Exception ex)
            {
                ErrorSuccessNotifier.AddErrorMessage(ex);
            }
        }
Exemplo n.º 19
0
 public IList<User> GetAll()
 {
     using (var context = new TwitterEntities())
     {
         return context.Users.ToList();  
     }
 }
Exemplo n.º 20
0
        // The id parameter name should match the DataKeyNames value set on the control
        public void GridViewMyChannels_UpdateItem(int ChannelId)
        {
            TwitterEntities context = new TwitterEntities();

            Twitter.Models.Channel item = null;
            // Load the item here, e.g. item = MyDataLayer.Find(id);
            item = context.Channels.Find(ChannelId);
            if (item == null)
            {
                // The item wasn't found
                ModelState.AddModelError("", String.Format("Item with id {0} was not found", ChannelId));
                return;
            }
            TryUpdateModel(item);
            if (ModelState.IsValid)
            {
                try
                {
                    Verificator.ValidateChannel(item.Name);
                    context.SaveChanges();
                    ErrorSuccessNotifier.AddInfoMessage("Channel updated successfully");
                }
                catch (Exception ex)
                {
                    ErrorSuccessNotifier.AddErrorMessage(ex.Message);
                }
                // Save changes here, e.g. MyDataLayer.SaveChanges();
            }
        }
 public IList<Location> GetAll()
 {
     using (var context = new TwitterEntities())
     {
         return context.Locations.ToList();
     }
 }
Exemplo n.º 22
0
        public void CreateAccessibleText_QuotedUrlTest()
        {
            var text     = "https://t.co/hoge";
            var entities = new TwitterEntities
            {
                Urls = new[]
                {
                    new TwitterEntityUrl
                    {
                        Indices     = new[] { 0, 17 },
                        Url         = "https://t.co/hoge",
                        DisplayUrl  = "twitter.com/hoge/status/1…",
                        ExpandedUrl = "https://twitter.com/hoge/status/1234567890",
                    },
                },
            };
            var quotedStatus = new TwitterStatus
            {
                Id    = 1234567890L,
                IdStr = "1234567890",
                User  = new TwitterUser
                {
                    Id         = 1111,
                    IdStr      = "1111",
                    ScreenName = "foo",
                },
                FullText = "test",
            };

            var expectedText = string.Format(Properties.Resources.QuoteStatus_AccessibleText, "foo", "test");

            Assert.Equal(expectedText, Twitter.CreateAccessibleText(text, entities, quotedStatus, quotedStatusLink: null));
        }
Exemplo n.º 23
0
 public void Create(Hashtag hashtag)
 {
     using (var context = new TwitterEntities())
     {
         context.Hashtags.Add(hashtag);
         context.SaveChanges();
     }
 }
Exemplo n.º 24
0
 //dohvaća komentare za t
 public void Create(Comment comment)
 {
     using (var context = new TwitterEntities())
     {
         context.Comments.Add(comment);
         context.SaveChanges();
     }
 }
Exemplo n.º 25
0
 public IQueryable<Tweet> LatestTweetsListView_GetLatestTweets()
 {
     var context = new TwitterEntities();
     return context.Tweets
         .Include("Comments")
         .Include("AspNetUser")
         .OrderByDescending(t => t.DatePosted);
 }
Exemplo n.º 26
0
 public User Get(int id)
 {
     using (var context = new TwitterEntities())
     {
         return context.Users
             .SingleOrDefault(u => u.Id == id);
     }
 }
 public void Create(Location location)
 {
     using (var context = new TwitterEntities())
     {
         context.Locations.Add(location);
         context.SaveChanges();
     }
 }
Exemplo n.º 28
0
 public void Create(Tweet tweet)
 {
     using (var context = new TwitterEntities())
     {
         context.Tweets.Add(tweet);
         context.SaveChanges();
     }
 }
Exemplo n.º 29
0
 public void Create(User user)
 {
     using (var context = new TwitterEntities())
     {
         context.Users.Add(user);
         context.SaveChanges();
     }
 }
Exemplo n.º 30
0
 public ICollection<Tweet> GetList()
 {
     ICollection<Tweet> result;
     using (context = new TwitterEntities())
     {
         result = context.Tweets.ToList();
     }
     return result;
 }
Exemplo n.º 31
0
        public void AutoLinkHtml_EntityNullTest()
        {
            var             text     = "てすとてすとー";
            TwitterEntities entities = null;

            var expected = "てすとてすとー";

            Assert.Equal(expected, TweetFormatter.AutoLinkHtml(text, entities));
        }
Exemplo n.º 32
0
        public void AutoLinkHtml_BreakLineTest()
        {
            var             text     = "てすと\nてすと\nてすと";
            TwitterEntities entities = null;

            var expected = "てすと<br>てすと<br>てすと";

            Assert.Equal(expected, TweetFormatter.AutoLinkHtml(text, entities));
        }
Exemplo n.º 33
0
        public void CreateHtmlAnchor_NicovideoTest()
        {
            var text     = "sm9";
            var entities = new TwitterEntities();

            var expectedHtml = @"<a href=""https://www.nicovideo.jp/watch/sm9"">sm9</a>";

            Assert.Equal(expectedHtml, Twitter.CreateHtmlAnchor(text, entities, quotedStatusLink: null));
        }
Exemplo n.º 34
0
        protected void HyperLinkAddMessage_Click(object sender, EventArgs e)
        {
            try
            {
                int channelId = Convert.ToInt32(Request.Params["channelId"]);

                TwitterEntities context = new TwitterEntities();

                string currentUserName = User.Identity.Name;

                LinkButton button = sender as LinkButton;

                var tr = button.Parent.Parent;

                var trControls = tr.Controls;

                string messageContent = null;

                foreach (Control tdControl in trControls)
                {
                    foreach (Control control in tdControl.Controls)
                    {
                        if (control.ID == "MessageContent")
                        {
                            messageContent = (control as TextBox).Text;
                        }
                    }
                }

                Verificator.ValidateMessage(messageContent);

                string userId = context.AspNetUsers.FirstOrDefault(x => x.UserName == currentUserName).Id;

                Message message = new Message()
                {
                    ChannelId      = channelId,
                    Date           = DateTime.Now,
                    MessageContent = messageContent,
                    UserId         = userId
                };

                context.Messages.Add(message);
                context.SaveChanges();
                this.GridViewMessages.DataBind();
                this.InfoHolder.Visible = false;
                //ErrorSuccessNotifier.ShowAfterRedirect = false;
                //ErrorSuccessNotifier.AddSuccessMessage("Message created successfully.");
            }
            catch (Exception ex)
            {
                this.InfoHolder.InnerText = ex.Message;
                this.InfoHolder.Attributes.Add("class", "alert alert-error");
                this.InfoHolder.Visible = true;
                //ErrorSuccessNotifier.ShowAfterRedirect = false;
                //ErrorSuccessNotifier.AddErrorMessage(ex);
            }
        }
Exemplo n.º 35
0
 public ICollection<User> GetList()
 {
     ICollection<User> result;
     using (var context = new TwitterEntities())
     {
         result = context.Users.ToList();
     }
     return result;
 }
Exemplo n.º 36
0
        public IQueryable <Message> GridViewChannels_GetData()
        {
            TwitterEntities context = new TwitterEntities();

            string currentUserName = User.Identity.Name;
            var    messages        = context.AspNetUsers.Include("Messages").
                                     FirstOrDefault(x => x.UserName == currentUserName).Messages.OrderBy(m => m.MessageId).AsQueryable();

            return(messages);
        }
Exemplo n.º 37
0
        public IQueryable <Twitter.Models.AspNetUser> ListViewUsers_GetData()
        {
            TwitterEntities context = new TwitterEntities();

            string username = User.Identity.Name;
            var    allUsers = context.AspNetUsers.
                              Where(x => x.UserName != username).AsQueryable();

            return(allUsers);
        }
Exemplo n.º 38
0
        protected void Page_PreRender(object sender, EventArgs e)
        {
            TwitterEntities context  = new TwitterEntities();
            var             channels = context.Channels.ToList();

            this.DropDownListChannels.DataSource     = channels;
            this.DropDownListChannels.DataTextField  = "Name";
            this.DropDownListChannels.DataValueField = "ChannelId";
            this.DropDownListChannels.DataBind();
        }
Exemplo n.º 39
0
        public IQueryable <Message> GridViewChannels_GetData()
        {
            TwitterEntities context   = new TwitterEntities();
            int             channelId = Convert.ToInt32(Request.Params["channelId"]);

            var messages = context.Messages.Include("Channel").
                           Where(x => x.ChannelId == channelId);

            return(messages.OrderBy(m => m.MessageId));
        }
Exemplo n.º 40
0
        public User GetById(int id)
        {
            User result = null;

            using (var context = new TwitterEntities())
            {
                result = context.Users.FirstOrDefault(x => x.Id == id);
            }
            return result;
        }
Exemplo n.º 41
0
        protected void Page_Load(object sender, EventArgs e)
        {
            TwitterEntities context = new TwitterEntities();

            string username = User.Identity.Name;

            var currentUser = context.AspNetUsers.FirstOrDefault(x => x.UserName == username);
            var following   = currentUser.AspNetUsers1.ToList();

            this.UsersControlFriends.DataSource = following;
        }
Exemplo n.º 42
0
        protected void Page_Load(object sender, EventArgs e)
        {
            TwitterEntities context = new TwitterEntities();

            string username = User.Identity.Name;

            var allUsers = context.AspNetUsers.Where(x => x.UserName != username).ToList();

            this.ListViewAllUsers.DataSource = allUsers;
            this.ListViewAllUsers.DataBind();
        }
Exemplo n.º 43
0
        // The id parameter name should match the DataKeyNames value set on the control
        public void GridViewMessages_DeleteItem(int MessageId)
        {
            int messageId = MessageId;

            TwitterEntities context = new TwitterEntities();

            var message = context.Messages.Find(messageId);

            context.Messages.Remove(message);
            context.SaveChanges();
        }
Exemplo n.º 44
0
        public static TwitterEntities ParseTwitterageToEntities(this string text)
        {
            var entities = new TwitterEntities
                               {
                                   HashTags = new List<TwitterHashTag>(ParseTwitterageToHashTags(text)),
                                   Mentions = new List<TwitterMention>(ParseTwitterageToMentions(text)),
                                   Urls = new List<TwitterUrl>(ParseTwitterageToUrls(text))
                               };

            return entities;
        }
Exemplo n.º 45
0
 public IList<Tweet> GetAll()
 {
     using (var context = new TwitterEntities())
     {
         return context.Tweets
             .Include("Author")
             .Include("Comments")
             .Include("Comments.User")
             .Include("FavouriteTweets")
             .Include("FavouriteTweets.User")
             .ToList();
     }
 }
Exemplo n.º 46
0
        public bool Delete(int id)
        {
            bool result = false;
            using (context = new TwitterEntities())
            {
                var tweet = GetById(id);
                context.Tweets.Remove(tweet);
                result = context.SaveChanges() > 0;
                Logger.Log.Debug("user ID:" + tweet.User_Id + " " + userDao.GetById(tweet.User_Id).Email + " deleted a tweet ID:" + tweet.Id);
            }

            return result;
        }
Exemplo n.º 47
0
        public bool Delete(User user)
        {
            bool result = false;

            using (var context = new TwitterEntities())
            {
                context.Users.Attach(user);
                context.Entry(user).State = EntityState.Deleted;
                result = context.SaveChanges() > 0;
                Logger.Log.Debug("user ID:" + user.Id + " " + user.Email + " was deleted successfully");
            }
            return result;
        }
Exemplo n.º 48
0
 public Tweet Get(int id)
 {
     using (var context = new TwitterEntities())
     {
         return context.Tweets
             .Include("Author")
             .Include("Comments")
             .Include("Comments.User")
             .Include("FavouriteTweets")
             .Include("FavouriteTweets.User")
             .SingleOrDefault(t => t.ID == id);
     }
 }
Exemplo n.º 49
0
        public bool Delete(int id)
        {
            bool result = false;
            using (var context = new TwitterEntities())
            {
                var follow = GetById(id);

                context.Follows.Attach(follow);
                context.Follows.Remove(follow);
                result = context.SaveChanges() > 0;
                Logger.Log.Debug("A new follow pair deleted with publisherId " + follow.Publisher_Id + " and subscriberId " + follow.Subscriber_Id);
            }
            return result;
        }
Exemplo n.º 50
0
 public bool Delete(Tweet tweet)
 {
     bool result = false;
     using (context = new TwitterEntities())
     {
         tweet.User = userDao.GetById(tweet.User_Id);
         context.Tweets.Attach(tweet);
         context.Tweets.Remove(tweet);
         //context.Entry(tweet).State = EntityState.Deleted;
         result = context.SaveChanges() > 0;
         Logger.Log.Debug("user ID:" + tweet.User_Id + " " + userDao.GetById(tweet.User_Id).Email + " deleted a tweet ID:" + tweet.Id);
     }
     return result;
 }
Exemplo n.º 51
0
        public bool Update(User user)
        {
            var pass = GetById(user.Id).Passwrd;
            bool result = false;
            user.Passwrd = pass;

            using (var context = new TwitterEntities())
            {
                context.Users.Attach(user);
                context.Entry(user).State = EntityState.Modified;
                result = context.SaveChanges() > 0;
                Logger.Log.Debug("User ID:" + user.Id + " " + user.Email + " was updated successfully");
            }
            return result;
        }
Exemplo n.º 52
0
        public bool Add(User user)
        {
            if (user == null) return false;

            bool result = false;

            using (var context = new TwitterEntities())
            {
                context.Users.Attach(user);
                context.Entry(user).State = EntityState.Added;
                result = context.SaveChanges() > 0;
                Logger.Log.Debug("new user ID:" + user.Id + " " + user.Email + " was added successfully");
            }
            return result;
        }
Exemplo n.º 53
0
        public void Delete(Tweet tweet, User user)
        {
            using (var context = new TwitterEntities())
            {
                var exisitngFavouriteTweet = (from favs in context.FavouriteTweets
                                             where (favs.Tweet1 == tweet && favs.User == user)
                                             select favs).SingleOrDefault();

                if (exisitngFavouriteTweet != null )
                {
                    context.FavouriteTweets.Remove(exisitngFavouriteTweet);
                    context.SaveChanges();
                }
            }
        }
Exemplo n.º 54
0
        public void Update(int id)
        {
            using (var context = new TwitterEntities())
            {
                var tweet = context.Tweets.SingleOrDefault(t => t.ID == id);
                if(tweet != null)
                {
                    context.FavouriteTweets.RemoveRange(tweet.FavouriteTweets);
                    context.Comments.RemoveRange(tweet.Comments);
                    context.Tweets.Remove(tweet);

                    context.SaveChanges();
                }
            }
        }
Exemplo n.º 55
0
        public AspNetUser UserDetailsFormView_GetUserInfo([QueryString] string Username)
        {
            var context = new TwitterEntities();

            if (!string.IsNullOrEmpty(Username))
            {
                return context.AspNetUsers
                    .FirstOrDefault(u => u.UserName == Username);
            }
            else
            {
                var userID = User.Identity.GetUserId();
                return context.AspNetUsers
                    .FirstOrDefault(u => u.Id == userID);
            }
        }
Exemplo n.º 56
0
        public bool Add(Tweet tweet)
        {
            bool result = false;

            using (context = new TwitterEntities())
            {
                tweet.User = userDao.GetById(tweet.User_Id);
                context.Tweets.Attach(tweet);
                context.Tweets.Add(tweet);

                result = context.SaveChanges() > 0;
                Logger.Log.Debug("user ID:" + tweet.User_Id + " " + userDao.GetById(tweet.User_Id).Email + " added a new tweet ID:" + tweet.Id);
            }

            return result;
        }
Exemplo n.º 57
0
        public void Create(Tweet tweet, User user)
        {
            using (var context = new TwitterEntities())
            {
                var existingTweet   = context.Tweets.SingleOrDefault(x => x.ID == tweet.ID);
                var existingUser    = context.Users.SingleOrDefault(x => x.Id == user.Id);

                if(existingTweet != null && existingUser != null)
                {
                    var favourite = new FavouriteTweet { Tweet1 = existingTweet, User = existingUser };
                    context.FavouriteTweets.Add(favourite);

                    context.SaveChanges();
                }
            }
        }
Exemplo n.º 58
0
        public void Update(User user)
        {
            using (var context = new TwitterEntities())
            {
                var existingUser = context.Users.SingleOrDefault(x => x.Id == user.Id);

                if(existingUser != null)
                {
                    existingUser.Nickname = user.Nickname;
                    existingUser.Location1 = user.Location1;
                    existingUser.Picture_URL = user.Picture_URL;
                    existingUser.FollowedBy = user.FollowedBy;
                    existingUser.Following = user.Following;

                    context.SaveChanges();
                }
            }
        }
Exemplo n.º 59
0
        public bool Add(int publisherId, int subscriberId)
        {
            bool result = false;

            var follow = new Follow
            {
                Publisher_Id = publisherId,
                Subscriber_Id = subscriberId,
                User = user.GetById(publisherId),
                User1 = user.GetById(subscriberId)
            };

            using (var context = new TwitterEntities())
            {
                context.Follows.Attach(follow);
                context.Follows.Add(follow);

                result = context.SaveChanges() > 0;
                Logger.Log.Debug("A new follow pair created with publisherId " + follow.Publisher_Id + " and subscriberId " + follow.Subscriber_Id);
            }
            return result;
        }
Exemplo n.º 60
0
        public IQueryable<Tweet> UserTweetsListView_GetUserTweets([QueryString] string Username)
        {
            var context = new TwitterEntities();

            if (!string.IsNullOrEmpty(Username))
            {
                return context.Tweets
                    .Include("Comments")
                    .Include("AspNetUser")
                    .Where(t => t.AspNetUser.UserName == Username)
                    .OrderByDescending(t => t.DatePosted)
                    .AsQueryable();
            }
            else
            {
                var userID = User.Identity.GetUserId();
                return context.Tweets
                    .Include("Comments")
                    .Include("AspNetUser")
                    .Where(t => t.AspNetUser.Id == userID)
                    .OrderByDescending(t => t.DatePosted)
                    .AsQueryable();
            }
        }