Пример #1
0
        public ActionResult DeleteConfirmed(int id)
        {
            Qvote qvote = db.Qvote.Find(id);

            db.Qvote.Remove(qvote);
            db.SaveChanges();
            return(RedirectToAction("Index"));
        }
Пример #2
0
 public ActionResult Edit([Bind(Include = "id,status,question_id,user_id")] Qvote qvote)
 {
     if (ModelState.IsValid)
     {
         db.Entry(qvote).State = EntityState.Modified;
         db.SaveChanges();
         return(RedirectToAction("Index"));
     }
     ViewBag.user_id     = new SelectList(db.AppUser, "id", "name", qvote.user_id);
     ViewBag.question_id = new SelectList(db.Question, "id", "title", qvote.question_id);
     return(View(qvote));
 }
Пример #3
0
        // GET: Qvotes/Details/5
        public ActionResult Details(int?id)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            Qvote qvote = db.Qvote.Find(id);

            if (qvote == null)
            {
                return(HttpNotFound());
            }
            return(View(qvote));
        }
Пример #4
0
        // GET: Qvotes/Edit/5
        public ActionResult Edit(int?id)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            Qvote qvote = db.Qvote.Find(id);

            if (qvote == null)
            {
                return(HttpNotFound());
            }
            ViewBag.user_id     = new SelectList(db.AppUser, "id", "name", qvote.user_id);
            ViewBag.question_id = new SelectList(db.Question, "id", "title", qvote.question_id);
            return(View(qvote));
        }
Пример #5
0
        public ActionResult VoteQuestionDown(int QuestionId)
        {
            var cookieValue = Request.Cookies["userId"] == null ? "" : Request.Cookies["userId"].Value.ToString();

            if (cookieValue != "")
            {
                var question            = db.Question.Find(QuestionId);
                var currentUserId       = int.Parse(cookieValue);
                var userIdOfTheQuestion = question.user_id;
                ViewBag.CurrentUser = db.AppUser.Find(currentUserId);
                if (userIdOfTheQuestion == currentUserId)
                {
                    return(RedirectToAction("ShowQandA", new { id = QuestionId }));
                }
                if (db.Qvote.Any(qv => qv.user_id == currentUserId && qv.question_id == QuestionId))
                {
                    var qvote = db.Qvote.FirstOrDefault(qv => qv.user_id == currentUserId && qv.question_id == QuestionId);
                    if (qvote.status == true)
                    {
                        qvote.status = false;
                        question.AppUser.reputation -= 5;
                        db.SaveChanges();
                    }
                }
                else
                {
                    var qvote = new Qvote();
                    qvote.status      = false;
                    qvote.question_id = QuestionId;
                    qvote.user_id     = currentUserId;

                    question.AppUser.reputation -= 5;
                    question.Qvote.Add(qvote);
                    db.SaveChanges();
                }

                ViewBag.Count = question.Qvote.Count(qv => qv.status == true) - question.Qvote.Count(qv => qv.status == false);
                return(RedirectToAction("ShowQandA", new { id = QuestionId }));
            }
            return(RedirectToAction("LogIn"));
        }