Esempio n. 1
0
        public ActionResult Details(int id, int pPage = 1, string myUser = null)
        {
            var db    = new CodeItDbContext();
            var code  = db.Codes.Where(c => c.Id == id).FirstOrDefault();
            var lines = code.CodeContent.Split(new string[] { "\r\n", "\n" }, StringSplitOptions.RemoveEmptyEntries).ToList();

            var comments = db.Comments.Where(c => c.CodeId == id).ToList();
            var viewCode = new CodeDetails
            {
                Id          = id,
                Author      = code.Author.Nickname,
                CodeTitle   = code.CodeTitle,
                CodeContent = lines,
                PrevPage    = pPage,
                ContactInfo = code.Author.Email,
                Coments     = comments,
                AuthorId    = code.AuthorId,
                MyUser      = myUser,
                TimeCreated = code.TimeCreated
            };


            if (code == null)
            {
                return(HttpNotFound());
            }

            return(View(viewCode));
        }
        public ActionResult GuestCodeDetails(int id, int pPage = 1, string mySearch = null)
        {
            var db   = new CodeItDbContext();
            var code = db.GuestCodes.Where(c => c.Id == id).FirstOrDefault();

            if (code == null)
            {
                return(HttpNotFound());
            }
            var lines = code.CodeContent.Split(new string[] { "\r\n", "\n" }, StringSplitOptions.RemoveEmptyEntries).ToList();

            var comments = db.CommentsOnGuest.Where(c => c.CodeId == id).ToList();
            var viewCode = new GuestCodeDetailsModel
            {
                Id          = id,
                Author      = code.Author,
                CodeTitle   = code.CodeTitle,
                CodeContent = lines,
                PrevPage    = pPage,
                Coments     = comments,
                TimeCreated = code.TimeCreated,
                MySearch    = mySearch
            };


            if (code == null)
            {
                return(HttpNotFound());
            }

            return(View(viewCode));
        }
Esempio n. 3
0
        // [ValidateInput(false)]
        public ActionResult CreateOnGuest(CommentViewModel model)
        {
            if (ModelState.IsValid)
            {
                var dbG = new CodeItDbContext();

                var authorIdG = User.Identity.GetUserId();

                dbG.CommentsOnGuest.Add(new CommentOnGuest
                {
                    CodeId   = model.Id,
                    Content  = model.Content,
                    AuthorId = authorIdG
                });

                dbG.SaveChanges();


                return(RedirectToAction("GuestCodeDetails", "Code", new { model.Id }));
            }
            var db1  = new CodeItDbContext();
            var code = db1.GuestCodes.Find(model.Id).CodeContent
                       .Split(new string[] { "\r\n", "\n" }
                              , StringSplitOptions.RemoveEmptyEntries)
                       .ToList();

            model.Code = code;

            return(View(model));
        }
        public ActionResult ConfirmDelete(int id)
        {
            var db = new CodeItDbContext();

            var code = db.Codes
                       .Where(a => a.Id == id)
                       .FirstOrDefault();

            if (code == null || !IsAuthorised(code))
            {
                return(HttpNotFound());
            }

            db.Codes.Remove(code);

            var comments = db.Comments.Where(c => c.CodeId == id).ToList();

            foreach (var c in comments)
            {
                db.Comments.Remove(c);
            }

            db.SaveChanges();
            return(RedirectToAction("All"));
        }
        public ActionResult GuestConfirmDelete(int id)
        {
            var db = new CodeItDbContext();

            var code = db.GuestCodes
                       .Where(a => a.Id == id)
                       .FirstOrDefault();

            if (code == null || !this.User.IsInRole("Admin"))
            {
                return(HttpNotFound());
            }

            db.GuestCodes.Remove(code);

            var comments = db.CommentsOnGuest.Where(c => c.CodeId == id).ToList();

            foreach (var c in comments)
            {
                db.CommentsOnGuest.Remove(c);
            }

            db.SaveChanges();
            return(RedirectToAction("AllGuest"));
        }
        public ActionResult AllGuest(string search, int page = 1)
        {
            var pageSize = 10;

            var db = new CodeItDbContext();

            var pasteQuery = db.GuestCodes.AsQueryable();

            if (search != null)
            {
                pasteQuery = pasteQuery
                             .Where(p => p.CodeTitle.ToLower().Contains(search.ToLower()) ||
                                    p.CodeTitle.ToLower().Contains(search.ToLower()));
            }

            var pastes = pasteQuery
                         .OrderByDescending(c => c.Id)
                         .Skip((page - 1) * pageSize)
                         .Take(pageSize)
                         .Select(c => new AllGuestCodesModel
            {
                Id          = c.Id,
                CodeTitle   = c.CodeTitle,
                Author      = c.Author,
                TimeCreated = c.TimeCreated
            }).ToList();

            ViewBag.CurrentPage = page;

            return(View(pastes));
        }
        public ActionResult GuestEdit(int id)
        {
            var db   = new CodeItDbContext();
            var code = db.GuestCodes.Find(id);

            if (code == null || !this.User.IsInRole("Admin"))
            {
                return(HttpNotFound());
            }

            return(View(code));
        }
Esempio n. 8
0
        public ActionResult DeleteOnGuest(int id)
        {
            var db      = new CodeItDbContext();
            var comment = db.CommentsOnGuest.Find(id);

            if (comment == null || !IsAuthorisedOnGuest(comment))
            {
                return(HttpNotFound());
            }

            return(View(comment));
        }
        public ActionResult Edit(int id)
        {
            var db   = new CodeItDbContext();
            var code = db.Codes.Find(id);

            if (code == null || !IsAuthorised(code))
            {
                return(HttpNotFound());
            }

            return(View(code));
        }
        public ActionResult CreateAsGuest(GuestCodeModel model)
        {
            if (ModelState.IsValid)
            {
                var db = new CodeItDbContext();

                db.GuestCodes.Add(model);

                db.SaveChanges();

                return(RedirectToAction("GuestCodeDetails", new { id = model.Id }));
            }
            return(View(model));
        }
        public ActionResult GuestDelete(int id)
        {
            var db = new CodeItDbContext();

            var code = db.GuestCodes
                       .Where(a => a.Id == id)
                       .FirstOrDefault();

            if (code == null || !this.User.IsInRole("Admin"))
            {
                return(HttpNotFound());
            }

            return(View(code));
        }
        public ActionResult Delete(int id)
        {
            var db = new CodeItDbContext();

            var code = db.Codes
                       .Where(a => a.Id == id)
                       .FirstOrDefault();

            if (code == null || !IsAuthorised(code))
            {
                return(HttpNotFound());
            }

            return(View(code));
        }
Esempio n. 13
0
        public ActionResult Create(int id)
        {
            var db   = new CodeItDbContext();
            var code = db.Codes.Find(id).CodeContent
                       .Split(new string[] { "\r\n", "\n" }
                              , StringSplitOptions.RemoveEmptyEntries)
                       .ToList();

            var comment = new CommentViewModel
            {
                CodeId = id,
                Code   = code,
            };

            return(View(comment));
        }
Esempio n. 14
0
        public ActionResult DeleteOnGuestConf(int id)
        {
            var db = new CodeItDbContext();

            var comment = db.CommentsOnGuest.Find(id);

            if (comment == null || !IsAuthorisedOnGuest(comment))
            {
                return(HttpNotFound());
            }

            var codeId = comment.CodeId;

            db.CommentsOnGuest.Remove(comment);

            db.SaveChanges();

            return(RedirectToAction("GuestCodeDetails", "Code", new { id = codeId }));
        }
        public ActionResult Create(CreateCodeModel model)
        {
            if (ModelState.IsValid)
            {
                var db = new CodeItDbContext();

                var code = db.Codes.Add(new CodeModel
                {
                    CodeTitle   = model.CodeTitle,
                    CodeContent = model.CodeContent,
                    AuthorId    = User.Identity.GetUserId()
                });

                db.SaveChanges();

                return(RedirectToAction("Details", new { code.Id }));
            }
            return(View(model));
        }
Esempio n. 16
0
        public ActionResult EditOnGuest(Comment model)
        {
            if (ModelState.IsValid)
            {
                var db = new CodeItDbContext();

                var comment = db.CommentsOnGuest.Find(model.Id);

                if (comment == null || !IsAuthorisedOnGuest(comment))
                {
                    return(HttpNotFound());
                }

                comment.Content     = model.Content;
                comment.TimeCreated = DateTime.Now;

                db.SaveChanges();

                return(RedirectToAction("GuestCodeDetails", "Code", new { id = comment.CodeId }));
            }
            return(View(model));
        }
Esempio n. 17
0
        public ActionResult Create(CommentViewModel model)
        {
            if (ModelState.IsValid)
            {
                var db = new CodeItDbContext();

                var authorId = User.Identity.GetUserId();

                db.Comments.Add(new Comment
                {
                    CodeId   = model.Id,
                    AuthorId = authorId,
                    Content  = model.Content
                });

                db.SaveChanges();

                return(RedirectToAction("Details", "Code", new { id = model.Id }));
            }

            return(View(model));
        }
        // [ValidateInput(false)]
        public ActionResult Edit(CodeModel model)
        {
            if (ModelState.IsValid)
            {
                using (var db = new CodeItDbContext())
                {
                    var code = db.Codes.Find(model.Id);

                    if (code == null || !IsAuthorised(code))
                    {
                        return(HttpNotFound());
                    }

                    code.CodeTitle   = model.CodeTitle;
                    code.CodeContent = model.CodeContent;

                    db.SaveChanges();
                }

                return(RedirectToAction("Details", new { id = model.Id }));
            }
            return(View(model));
        }
Esempio n. 19
0
        public ActionResult CreateOnGuest(CommentViewModel model)
        {
            if (ModelState.IsValid)
            {
                var dbG = new CodeItDbContext();

                var authorIdG = User.Identity.GetUserId();

                dbG.CommentsOnGuest.Add(new CommentOnGuest
                {
                    CodeId   = model.Id,
                    Content  = model.Content,
                    AuthorId = authorIdG
                });

                dbG.SaveChanges();


                return(RedirectToAction("GuestCodeDetails", "Code", new { model.Id }));
            }

            return(View(model));
        }
        //[ValidateInput(false)]
        public ActionResult GuestEdit(GuestCodeModel model)
        {
            if (ModelState.IsValid)
            {
                using (var db = new CodeItDbContext())
                {
                    var code = db.GuestCodes.Find(model.Id);

                    if (code == null || !this.User.IsInRole("Admin"))
                    {
                        return(HttpNotFound());
                    }

                    code.CodeTitle   = model.CodeTitle;
                    code.CodeContent = model.CodeContent;

                    db.SaveChanges();
                }

                return(RedirectToAction("GuestCodeDetails", new { id = model.Id }));
            }
            return(View(model));
        }
Esempio n. 21
0
 public static void Initialize()
 {
     Database.SetInitializer <CodeItDbContext>(new MigrateDatabaseToLatestVersion <CodeItDbContext, Configuration>());
     CodeItDbContext.Create().Database.Initialize(true);
 }