Example #1
0
        public ActionResult Login(LoginViewModel loginViewModel)
        {
            if (ModelState.IsValid)
            {
                loginViewModel.login.username = loginViewModel.Username;
                loginViewModel.login.password = loginViewModel.Password;

                try
                {
                    if (loginClient.DoesUserExist(loginViewModel.login))
                    {
                        ModelState.AddModelError("", "Sorry, we can't find you in our system, please try again or register");
                    }
                    else
                    {
                        var login = loginClient.DecryptPassword(loginViewModel.login);

                        CurrentQuizViewModel quizVm = new CurrentQuizViewModel();
                        quizVm.Login.Username = loginViewModel.Username;
                        SessionLogin.UserName = quizVm.Login.Username;
                        return(RedirectToAction("Category"));
                    }
                }
                catch (FaultException)
                {
                    ModelState.AddModelError("", "Sorry, we can't find you in our system, please try again or register");
                }
            }
            return(View(loginViewModel));
        }
Example #2
0
        public ActionResult Question(int CategoryId, int lobbyId)
        {
            if (SessionLogin.UserIsInSession())
            {
                if (Session["currentQuizViewModel"] == null)
                {
                    var quizVm = new CurrentQuizViewModel {
                        CategoryId = CategoryId, lobbyId = lobbyId
                    };
                    quizVm.User            = userClient.GetUserByUsername(SessionLogin.UserName);
                    quizVm.Questions       = quizClient.GetAllQuestionsAndAnswersByCategoryId(CategoryId);
                    quizVm.CurrentQuestion = quizVm.Questions.Skip(quizVm.ToSkip).Take(1).FirstOrDefault();
                    quizVm.ToSkip++;
                    Session["currentQuizViewModel"] = quizVm;
                    return(View(quizVm));
                }
                else
                {
                    CurrentQuizViewModel quizVm = (CurrentQuizViewModel)Session["currentQuizViewModel"];
                    if (quizVm.CategoryId != CategoryId)
                    {
                        SessionLogin.CloseSession();
                        return(RedirectToAction("Index"));
                        //Hvis han prøver at skifte quiz undervejs !?
                    }

                    quizVm.CurrentQuestion = quizVm.Questions.Skip(quizVm.ToSkip).Take(1).FirstOrDefault();
                    quizVm.Points          = (int)Session["Point"];
                    quizVm.ToSkip++;

                    if (quizVm.CurrentQuestion == null)
                    {
                        Session["currentQuizViewModel"] = null;
                        int totalPoint = (int)Session["Point"];
                        var user       = userClient.GetUserByUsername(SessionLogin.UserName);
                        user.point += totalPoint;
                        userClient.AddPointsToUser(user);
                        return(RedirectToAction("Finish", new { totalPoints = totalPoint, lobbyId = lobbyId }));
                    }
                    return(View(quizVm));
                }
            }
            return(RedirectToAction("Index"));
        }