public ActionResult Update(int tournamentId)
        {
            if (account.IsLoggedIn())
            {
                Models.Tournament tourny = new Models.Tournament(service, tournamentId);
                if (tourny.IsAdmin(account.Model.AccountID))
                {
                    ViewBag.Create     = false;
                    ViewBag.CanEdit    = tourny.CanEdit();
                    ViewBag.InProgress = tourny.Model.InProgress;
                    tourny.SetFields();
                    return(View("Create", tourny.viewModel));
                }
                else
                {
                    Session["Message"]       = "You do not have permission to do that.";
                    Session["Message.Class"] = ViewError.ERROR;

                    return(RedirectToAction("Tournament", "Tournament", new { guid = tourny.Model.TournamentID }));
                }
            }
            else
            {
                Session["Message"]       = "You need to login to do that";
                Session["Message.Class"] = ViewError.ERROR;

                return(RedirectToAction("Login", "Account"));
            }
        }
 public ActionResult Create()
 {
     if (!account.IsLoggedIn())
     {
         return(RedirectToAction("Login", "Account"));
     }
     else
     {
         Models.Tournament tournament = new Models.Tournament(service, -1);
         ViewBag.Create     = true;
         ViewBag.CanEdit    = tournament.CanEdit();
         ViewBag.InProgress = tournament.Model.InProgress;
         return(View("Create", tournament.viewModel));
     }
 }
        public ActionResult Update(TournamentViewModel viewModel, int tournamentId)
        {
            if (account.IsLoggedIn())
            {
                Models.Tournament tourny = new Models.Tournament(service, tournamentId);

                if (tourny.IsAdmin(account.Model.AccountID))
                {
                    if (tourny.Update(viewModel, account.Model.AccountID))
                    {
                        Session["Message"]       = "Edits to the tournament was successful";
                        Session["Message.Class"] = ViewError.SUCCESS;

                        return(RedirectToAction("Tournament", "Tournament", new { guid = tourny.Model.TournamentID }));
                    }
                    else
                    {
                        Session["Message"]       = "We were unable to update your tournament.";
                        Session["Message.Class"] = ViewError.ERROR;
                    }
                }
                else
                {
                    Session["Message"]       = "You do not have permission to update this tournament";
                    Session["Message.Class"] = ViewError.ERROR;
                }

                ViewBag.Create     = false;
                ViewBag.CanEdit    = tourny.CanEdit();
                ViewBag.InProgress = tourny.Model.InProgress;

                return(View("Create", viewModel));
            }
            else
            {
                Session["Message"]       = "You must login to edit a tournament.";
                Session["Message.Class"] = ViewError.ERROR;
                return(RedirectToAction("Login", "Account"));
            }
        }
        public ActionResult Create(TournamentViewModel viewModel)
        {
            // Verify the user is logged in first
            if (!account.IsLoggedIn())
            {
                Session["Message"]       = "You must login to create a tournament.";
                Session["Message.Class"] = ViewError.WARNING;
                return(RedirectToAction("Login", "Account"));
            }
            else
            {
                Models.Tournament tourny = new Models.Tournament(service, -1);
                if (ModelState.IsValid)
                {
                    if (tourny.Create(viewModel, account))
                    {
                        return(RedirectToAction("Tournament", "Tournament", new { guid = tourny.Model.TournamentID }));
                    }
                    else
                    {
                        // Show a success message.
                        Session["Message"]       = "We were unable to create the tournament.";
                        Session["Message.Class"] = ViewError.ERROR;
                    }
                }
                else
                {
                    Session["Message.Class"] = ViewError.ERROR;
                    Session["Message"]       = "Please enter in the required fields listed below.";
                }

                ViewBag.Create     = true;
                ViewBag.CanEdit    = tourny.CanEdit();
                ViewBag.InProgress = tourny.Model.InProgress;
                return(View("Create", tourny.viewModel));
            }
        }