public ActionResult Rate(QuestionRatingViewModel model, string jsRatings, string jsQuestions)
 {
     if (User.Identity.IsAuthenticated && (User.IsInRole("Admin") || User.IsInRole("User")) && jsRatings != "" && jsQuestions != "")
     {
         List <string> rating      = jsRatings.Split(new char[] { ':' }).ToList();
         List <string> questionIds = jsQuestions.Split(new char[] { ':' }).ToList();
         List <int>    intRating   = new List <int> {
         };
         List <int> intQuestionIds = new List <int> {
         };
         for (int i = 0; i < rating.Count; i++)
         {
             intRating.Add(Convert.ToInt32(rating[i]));
             intQuestionIds.Add(Convert.ToInt32(questionIds[i]));
         }
         model.Comment = model.Comment ?? "";
         RatingManager.Rate(model.Id, intQuestionIds, intRating, model.Comment, User.Identity.GetUserId());
     }
     return(RedirectToAction("Index", "Home"));
 }
 public ActionResult Rate(string id)
 {
     if (User.Identity.IsAuthenticated && (User.IsInRole("Admin") || User.IsInRole("User")))
     {
         List <QuestionRating> questionRatings      = RatingManager.GetListOfQuestionRatingById(id, User.Identity.GetUserId());
         List <int>            questionRatingValues = new List <int> {
         };
         for (int i = 0; i < questionRatings.Count; i++)
         {
             questionRatingValues.Add(questionRatings[i].Rating);
         }
         QuestionRatingViewModel model = new QuestionRatingViewModel
         {
             Id        = id,
             Questions = RatingManager.GetAllQuestions(),
             Ratings   = questionRatingValues,
             Comment   = RatingManager.GetCommentById(id, User.Identity.GetUserId())
         };
         return(View(model));
     }
     return(RedirectToAction("Index", "Home"));
 }