Example #1
0
        // Shows all contributions a user made to articles
        public void DisplayAccountInformation()
        {
            // Creates UserAccount object
            var activeUser = Session[Global.ActiveUserAccount] as UserAccount;

            lblGreeting.Text = string.Format("Account details for: <b>{0}</b>", activeUser.Username);

            // Retrieves links to articles that have ever changed
            var userArticleEdits = from edit in MovieWikiDbHelper.AllWikiArticleEditHistories
                                   join article in MovieWikiDbHelper.AllWikiArticles
                                   on edit.ArticleId equals article.ArticleId
                                   where edit.AccountId == activeUser.AccountId
                                   orderby edit.EditTimestamp descending
                                   select new { Article = article, Edit = edit };

            lblArticleEdits.Visible = userArticleEdits.Count() > 0;

            // creates links to articles related to UserAccount
            foreach (var userArticleEdit in userArticleEdits)
            {
                var hyperLinkText  = userArticleEdit.Article.Title;
                var timeStampLabel = new Label {
                    Text = string.Format(" {0}, {1}",
                                         userArticleEdit.Edit.EditTimestamp.ToShortDateString(), userArticleEdit.Edit.EditTimestamp.ToLongTimeString())
                };
                var hyperLink = WebControlBuilder.BuildHyperLink(hyperLinkText,
                                                                 string.Format(Global.ShowArticleUrlWithId, userArticleEdit.Article.ArticleId));
                pUserEdits.Controls.Add(hyperLink);
                pUserEdits.Controls.Add(timeStampLabel);
                pUserEdits.Controls.Add(new LiteralControl("<br />"));
            }
        }
Example #2
0
        // Shows at most 10 recent articles created on MovieWiki
        private void DisplayRecentArticles()
        {
            // retrieves last 10 articles created
            var recentArticles = (from edit in MovieWikiDbHelper.AllWikiArticleEditHistories
                                  join article in MovieWikiDbHelper.AllWikiArticles
                                  on edit.ArticleId equals article.ArticleId
                                  orderby edit.EditTimestamp descending
                                  select article).Distinct().Take(10);

            int result = recentArticles.Count();

            // Formats modal to display recent article informaiton
            lblRecentEdits.Text = recentArticles.Count() > 0
                ? result + " articles most recently contributed to:"
                : "No articles were created yet";

            foreach (var recentArticle in recentArticles)
            {
                var hyperLinkText = recentArticle.Title;
                var hyperLink     = WebControlBuilder.BuildHyperLink(hyperLinkText,
                                                                     string.Format(Global.ShowArticleUrlWithId, recentArticle.ArticleId));
                pUserEditsRecent.Controls.Add(hyperLink);
                pUserEditsRecent.Controls.Add(new LiteralControl("<br />"));
            }
        }