コード例 #1
0
        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;
        }
コード例 #2
0
        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);
            }
        }
コード例 #3
0
        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);
            }
        }
コード例 #4
0
        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");
                    }
                }
            }
        }