private void FillPage(int id) { Trigger4.AppCode.PostModel postModel = new Trigger4.AppCode.PostModel(); Post post = postModel.GetPost(id); txtTitle.Text = post.Title; txtBody.Text = post.Body; }
protected void btnSubmit_Click(object sender, EventArgs e) { Trigger4.AppCode.PostModel model = new Trigger4.AppCode.PostModel(); Post p = CreatePost(); if (!string.IsNullOrWhiteSpace(Request.QueryString["id"])) { int id = Convert.ToInt32(Request.QueryString["id"]); lblResult.Text = model.UpdatePost(id, p); } else { lblResult.Text = model.InsertPost(p); } }
protected void Page_Load(object sender, EventArgs e) { if (!String.IsNullOrWhiteSpace(Request.QueryString["id"])) { int id = Convert.ToInt32(Request.QueryString["id"]); Trigger4.AppCode.PostModel model = new Trigger4.AppCode.PostModel(); List <Post> blogPosts = new List <Post>(); blogPosts.Add(model.GetPost(id)); DisplayPosts(blogPosts, 1, 1); } else if (!String.IsNullOrWhiteSpace(Request.QueryString["page"])) { int page = Convert.ToInt32(Request.QueryString["page"]); Trigger4.AppCode.PostModel model = new Trigger4.AppCode.PostModel(); List <Post> blogPosts = new List <Post>(); blogPosts = model.GetAllPosts(); DisplayPosts(blogPosts, 1, page); } else if (!String.IsNullOrWhiteSpace(Request.QueryString["tag"])) { string tag = Request.QueryString["tag"]; Trigger4.AppCode.PostModel model = new Trigger4.AppCode.PostModel(); List <Post> blogPosts = new List <Post>(); blogPosts = model.GetPostsByTag(); DisplayPosts(blogPosts, 1, 1); } else { Trigger4.AppCode.PostModel model = new Trigger4.AppCode.PostModel(); List <Post> blogPosts = new List <Post>(); blogPosts = model.GetAllPosts(); DisplayPosts(blogPosts, 1, 1); } }
protected void DisplayPosts(List <Post> posts, int max, int page) { Trace.Write("InDisplay"); int amountOfDrafts = 0; if (posts != null) { foreach (Post po in posts) { if ((po.IsDraft == "Yes") || (po.IsDraft == null)) { amountOfDrafts++; } } } if (posts != null) { if (page > 1) { if (posts.Count <= (page - 1) * max) { Response.Redirect("~/Blog/Blog.aspx"); } else { posts.RemoveRange(0, (page - 1) * max); } } Trigger4.AppCode.CommentModel cmod = new Trigger4.AppCode.CommentModel(); List <Comment> comments = new List <Comment>(); comments = cmod.GetAllComments(); Panel sidebarPanel = new Panel(); sidebarPanel.Controls.Add(new Literal { Text = "<div class=\"sidebarBlog\">" }); sidebarPanel.Controls.Add(new Literal { Text = "<h2>Recent Posts</h2>" }); int maxLinks = 7; int numLinks = 0; Trigger4.AppCode.PostModel model = new Trigger4.AppCode.PostModel(); List <Post> blogPosts = new List <Post>(); blogPosts = model.GetAllPosts(); foreach (Post p in blogPosts) { numLinks++; if (numLinks < maxLinks) { sidebarPanel.Controls.Add(new Literal { Text = "<a class=\"sidebarLink\" href=\"" + "/Blog/Blog.aspx?id=" + p.ID + "\">" + p.Title + "</a>" }); sidebarPanel.Controls.Add(new Literal { Text = "<br>" }); } } sidebarPanel.Controls.Add(new Literal { Text = "</div>" }); pnlSidebar.Controls.Add(sidebarPanel); foreach (Post p in posts.Take(max)) { AddMetaTags(p); Panel postPanel = new Panel(); Label lblTitle = new Label(); Button btnComment = new Button(); Button button = new Button(); btnComment.Click += new EventHandler(btnComment_Click); btnComment.ID = p.ID.ToString(); TextBox txtComment = new TextBox(); txtComment.ID = p.ID.ToString() + "txt"; btnComment.CssClass = "btn"; btnComment.Text = "Comment"; txtComment.TextMode = TextBoxMode.MultiLine; txtComment.Height = 75; txtComment.Width = 450; txtComment.CssClass = "commentBox"; TextBox txtName = new TextBox(); txtName.ID = p.ID.ToString() + "name"; txtName.Width = 250; Label lblName = new Label(); Label lblComment = new Label(); Label lblResult = new Label(); lblName.CssClass = "labels"; lblName.Text = "Name:"; lblComment.CssClass = "labels"; lblComment.Text = "Comment:"; lblResult.CssClass = "labels"; lblResult.Text = ""; lblResult.ID = p.ID.ToString() + "result"; if (p.IsDraft == "No") { string month = DetermineMonth(p); int commentCount = 0; postPanel.Controls.Add(new Literal { Text = "<div class=\"blog\">" }); postPanel.Controls.Add(new Literal { Text = "<div class=\"date\">" }); postPanel.Controls.Add(new Literal { Text = "<h3>" + month + "</h3>" }); postPanel.Controls.Add(new Literal { Text = "<p>" + p.DateTime.Day + "</p>" }); postPanel.Controls.Add(new Literal { Text = "</div>" }); postPanel.Controls.Add(new Literal { Text = "<h2>" + p.Title + "</h2>" }); postPanel.Controls.Add(new Literal { Text = "<br>" }); postPanel.Controls.Add(new Literal { Text = "<p>" + p.Body + "</p>" }); postPanel.Controls.Add(new Literal { Text = "<br>" }); foreach (Comment co in comments) { if (co.PostID == p.ID) { commentCount++; } } if (commentCount == 0) { postPanel.Controls.Add(new Literal { Text = "<p>0 Comments</p>" }); } else { postPanel.Controls.Add(new Literal { Text = "<a href=\"#\" class=\"commentsLink\">" + commentCount.ToString() + " Comments</a>" }); } postPanel.Controls.Add(new Literal { Text = "<a href=\"#\" class=\"addCommentLink\">Add Comment</a>" }); postPanel.Controls.Add(lblResult); //postPanel.Controls.Add(txtComment); //Add Button if ((posts.Count - amountOfDrafts) > posts.Take(max).Count()) { Button btnMore = new Button(); btnMore.Click += new EventHandler(btnMore_Click); btnMore.CssClass = "btn"; btnMore.Text = "Older Posts"; postPanel.Controls.Add(btnMore); } //40x132 /////////////////////////////////////////////////////////////////////////////////////////// Add Share Buttons postPanel.Controls.Add(new Literal { Text = "<br>" }); postPanel.Controls.Add(new Literal { Text = "<div class=\"shareButtons\">" }); postPanel.Controls.Add(new Literal { Text = "<div class=\"fb-share-button\" data-href=\"http://www.triggerfind.com/Blog/Blog.aspx?id=" + p.ID }); postPanel.Controls.Add(new Literal { Text = "\" data-layout=\"button\"> </div>" }); postPanel.Controls.Add(new Literal { Text = "<a href=\"https://twitter.com/share?url=http://www.triggerfind.com/Blog/Blog.aspx?id=" + p.ID + "&text=" + p.Title + "\">" }); postPanel.Controls.Add(new Literal { Text = "<img src=\"http://www.triggerfind.com/images/twitter.png\" width=\"24px\" height=\"24px\">" }); postPanel.Controls.Add(new Literal { Text = "</a>" }); postPanel.Controls.Add(new Literal { Text = "<a href=\"https://www.linkedin.com/shareArticle?mini=true&url=http://www.triggerfind.com/Blog/Blog.aspx?id=" + p.ID + "&title=" + HttpUtility.UrlEncode(p.Title) + "\">" }); postPanel.Controls.Add(new Literal { Text = "<img src=\"http://www.triggerfind.com/images/linkedin.png\" width=\"58px\" height=\"24px\">" }); postPanel.Controls.Add(new Literal { Text = "</a>" }); postPanel.Controls.Add(new Literal { Text = "<a href=\"http://www.facebook.com/sharer/sharer.php?u=http://www.triggerfind.com/Blog/Blog.aspx?id=" + p.ID + "\">" }); postPanel.Controls.Add(new Literal { Text = "<img src=\"http://www.triggerfind.com/images/facebook.png\" width=\"79px\" height=\"24px\">" }); postPanel.Controls.Add(new Literal { Text = "</a>" }); postPanel.Controls.Add(new Literal { Text = "</div>" }); ////////////////////End Share Buttons postPanel.Controls.Add(new Literal { Text = "<div class=\"commentMaker\">" }); postPanel.Controls.Add(new Literal { Text = "<br>" }); postPanel.Controls.Add(lblName); postPanel.Controls.Add(txtName); postPanel.Controls.Add(new Literal { Text = "<br>" }); postPanel.Controls.Add(lblComment); postPanel.Controls.Add(new Literal { Text = "<br>" }); postPanel.Controls.Add(txtComment); postPanel.Controls.Add(btnComment); postPanel.Controls.Add(new Literal { Text = "" }); postPanel.Controls.Add(new Literal { Text = "" }); postPanel.Controls.Add(new Literal { Text = "" }); postPanel.Controls.Add(new Literal { Text = "</div>" }); postPanel.Controls.Add(new Literal { Text = "</div>" }); //Add Sidebar //End Sidebar postPanel.Controls.Add(new Literal { Text = "<div class=\"comments\">" }); foreach (Comment c in comments) { if (c.PostID == p.ID) { string mon = DetermineMonth(c); postPanel.Controls.Add(new Literal { Text = "<p>" }); postPanel.Controls.Add(new Literal { Text = "Posted by " + c.Name + " on " + mon + " " + c.DateTime.Day + ":" + "</p>" }); postPanel.Controls.Add(new Literal { Text = "<p>" }); postPanel.Controls.Add(new Literal { Text = c.Body }); postPanel.Controls.Add(new Literal { Text = "</p>" }); postPanel.Controls.Add(new Literal { Text = "<br>" }); } } postPanel.Controls.Add(new Literal { Text = "</div>" }); pnlPosts.Controls.Add(postPanel); Trace.Write("EndDisplay"); } } } }