示例#1
0
        public ActionResult Settings()
        {
            #region Card
            HttpCookie cookie = Request.Cookies["Card"];
            if (cookie != null)
            {
                List <string> Card = cookie.Value.Split(',').ToList();
                Card.RemoveAt(Card.Count - 1);

                ViewBag.Card      = Card;
                ViewBag.CardCount = Card.Count;
            }
            else
            {
                ViewBag.CardCount = 0;
            }
            #endregion
            ViewBag.setting = context.Settings.FirstOrDefault();

            int    userId   = (int)Session["LoginnerUserId"];
            vmBlog settings = new vmBlog();
            settings.Blogs          = context.Blogs.ToList();
            settings.BlogCategories = context.BlogCategories.ToList();
            settings.InstaFeeds     = context.InstaFeeds.ToList();
            settings.Tags           = context.Tags.ToList();
            settings.Users          = context.Users.ToList();
            settings.User           = context.Users.Find(userId);
            return(View(settings));
        }
示例#2
0
        public ActionResult Index()
        {
            vmBlog vm = new vmBlog();

            vm.posts = db.Posts.ToList();
            return(View(vm));
        }
示例#3
0
        public ActionResult Detail(int Id)
        {
            ViewBag.setting = context.Settings.FirstOrDefault();

            #region Card
            HttpCookie cookie = Request.Cookies["Card"];
            if (cookie != null)
            {
                List <string> Card = cookie.Value.Split(',').ToList();
                Card.RemoveAt(Card.Count - 1);

                ViewBag.Card      = Card;
                ViewBag.CardCount = Card.Count;
            }
            else
            {
                ViewBag.CardCount = 0;
            }
            #endregion

            vmBlog vmBlog = new vmBlog();
            vmBlog.Blog           = context.Blogs.Include("Messages").FirstOrDefault(b => b.Id == Id);
            vmBlog.Blogs          = context.Blogs.ToList();
            vmBlog.BlogCategories = context.BlogCategories.ToList();
            vmBlog.Messages       = context.Messages.Include("User").ToList();
            vmBlog.Message        = context.Messages.Include("User").FirstOrDefault();
            vmBlog.Tags           = context.Tags.ToList();
            vmBlog.InstaFeeds     = context.InstaFeeds.ToList();
            return(View(vmBlog));
        }
示例#4
0
        // GET: Blogs
        public ActionResult Index(string tag, string word, int page = 1)
        {
            #region Card
            HttpCookie cookie = Request.Cookies["Card"];
            if (cookie != null)
            {
                List <string> Card = cookie.Value.Split(',').ToList();
                Card.RemoveAt(Card.Count - 1);

                ViewBag.Card      = Card;
                ViewBag.CardCount = Card.Count;
            }
            else
            {
                ViewBag.CardCount = 0;
            }
            #endregion

            ViewBag.setting = context.Settings.FirstOrDefault();

            vmBlog      blog  = new vmBlog();
            List <Blog> blogs = context.Blogs.Include("Messages").Include("BlogCategory")
                                .Where(b => ((tag != null ? b.Title.Contains(tag) : true) ||
                                             (tag != null ? b.Text.Contains(tag) : true)) &&
                                       ((!string.IsNullOrEmpty(word) ? b.Text.Contains(word) : true) ||
                                        (!string.IsNullOrEmpty(word) ? b.Title.Contains(word) : true)))
                                .ToList();

            blog.Blogs = blogs.OrderByDescending(o => o.Id).Skip((page - 1) * 8).Take(8).ToList();

            blog.PageCount   = Convert.ToInt32(Math.Ceiling(blogs.Count() / 8.0));
            blog.CurrentPage = page;
            return(View(blog));
        }
示例#5
0
        public ActionResult postDetails(int id)
        {
            Session["mId"] = id;
            vmBlog vm = new vmBlog();

            vm.post     = db.Posts.Where(p => p.PostId == id).Single();
            vm.comments = db.comments.Where(c => c.postId == id);

            return(View(vm));
        }
        // mysite
        // mysite/Blog
        // mysite/Blog/BlogPost/{1?}
        /// <summary>
        /// Displays blog. Defaults to first if no valid id given
        /// </summary>
        /// <param name="id"></param>
        /// <returns></returns>
        public ActionResult BlogPost(int id = 1)
        {
            //gets content from Blog-Posts.json
            Helper helper  = new Helper();
            var    path    = Server.MapPath("~/App_Data/Blog-Posts.json");
            Root   rootObj = JsonConvert.DeserializeObject <Root>(helper.JSONRead(path));

            //if invalid id (SelectedBlogPostID) default to 1
            if (rootObj.blogPosts.Where(bp => bp.id == id).FirstOrDefault() == null)
            {
                TempData["Error"] = "Blog Post Not Found.";
                return(RedirectToAction("BlogPost", "Blog", new { id = 1 }));//used rather than chnaging the id so on refresh the error doesn't persist
            }

            //Add comment IDs and list<Reply> to Comment to allow them to be replied to
            var newid = 0;

            foreach (BlogPost blogPosts in rootObj.blogPosts)
            {
                if (blogPosts.comments == null)
                {
                    blogPosts.comments = new List <Comment>();
                }
                foreach (Comment comment in blogPosts.comments)
                {
                    if (comment.replies == null)
                    {
                        comment.replies = new List <Reply>();
                    }
                    comment.id = newid;
                    newid++;
                }
            }

            var convertedJson = JsonConvert.SerializeObject(rootObj, Formatting.Indented);

            helper.JSONWrite(path, convertedJson);

            //creates a view model
            vmBlog model = new vmBlog()
            {
                ListOfBlogPost     = rootObj.blogPosts,
                SelectedBlogPostID = id
            };

            //Populate Viewbag
            ViewBag.Error              = TempData["Error"];
            ViewBag.blogPosts          = model.ListOfBlogPost;
            ViewBag.SelectedBlogPostID = model.SelectedBlogPostID;
            return(View(model));
        }
示例#7
0
        public ActionResult Settings(User user)
        {
            ViewBag.setting = context.Settings.FirstOrDefault();
            if (ModelState.IsValid)
            {
                if (user.Password != null && user.Password != user.RepeatPassword)
                {
                    Session["PassError"] = true;
                    vmBlog settings1 = new vmBlog();
                    settings1.Blogs          = context.Blogs.ToList();
                    settings1.BlogCategories = context.BlogCategories.ToList();
                    settings1.InstaFeeds     = context.InstaFeeds.ToList();
                    settings1.Tags           = context.Tags.ToList();
                    settings1.Users          = context.Users.ToList();
                    settings1.User           = user;
                    return(View(settings1));
                }

                User user1 = (User)Session["LoginnerUser"];
                user1.Name    = user.Name;
                user1.Surname = user.Surname;
                user1.Phone   = user.Phone;
                user1.Email   = user.Email;
                user1.Address = user.Address;
                if (user.Password != null)
                {
                    user1.Password = Crypto.HashPassword(user.Password);
                }

                context.Entry(user1).State = EntityState.Modified;
                context.SaveChanges();
                return(RedirectToAction("Index"));
            }


            Session["ModelError"] = true;
            vmBlog settings = new vmBlog();

            settings.Blogs          = context.Blogs.ToList();
            settings.BlogCategories = context.BlogCategories.ToList();
            settings.InstaFeeds     = context.InstaFeeds.ToList();
            settings.Tags           = context.Tags.ToList();
            settings.Users          = context.Users.ToList();
            settings.User           = user;
            return(View(settings));
        }