public ActionResult Create(CreateCompetitionParameters parameters, HttpPostedFileBase playersFile, HttpPostedFileBase qualifyingPlayersFile)
        {
            var manager = ServiceProvider.Get<ICompetitionsManager>();
            var createCompetitionInfo = CreateCompetitionInfo(parameters);
            if (playersFile.IsNotNull())
            {
                createCompetitionInfo.PlayersFileUrl = AcceptCsvFile(playersFile, "CompetitionPlayers").ToString();
            }

            manager.Create(createCompetitionInfo);

            return RedirectToAction("Index");
        }
        public ActionResult ImportPlayers(HttpPostedFileBase competitionsPlayersFile)
        {
            if (competitionsPlayersFile.IsNotNull() && competitionsPlayersFile.ContentLength > 0)
            {
                var url = AcceptCsvFile(competitionsPlayersFile, "CompetitionPlayers");
                var manager = ServiceProvider.Get<ICompetitionsManager>();
                try
                {
                    manager.LoadCompetitionsPlayers(url.ToString());
                }
                catch (Exception anyException)
                {
                    SystemMonitor.Error(anyException, "Error importing competition players");
                    ModelState.AddModelError("LoadingCompetitionsFile", anyException.ToString());
                    return RedirectToAction("Import");
                }

            }
            return RedirectToAction("Index");            
        }
 public ActionResult Import(HttpPostedFileBase competitionsFile)
 {
     if (competitionsFile.IsNotNull() && competitionsFile.ContentLength > 0)
     {
         var url = AcceptCsvFile(competitionsFile, "CompetitionPlayers");
         var manager = ServiceProvider.Get<ICompetitionsManager>();
         var validationResult = manager.ValidateCompetitionsFile(url.ToString());
         if (validationResult == LoadCompetitionsValidationResult.Valid)
         {
             manager.LoadCompetitions(url.ToString());
         }
         else
         {
             ModelState.AddModelError(validationResult.ToString(), TranslateValidationResult(validationResult));
             return View();
         }
     }
     return RedirectToAction("Index");
 }
        public ActionResult UpdatePlayers(int competitionId, HttpPostedFileBase playersFile)
        {
            if (playersFile.IsNotNull() && playersFile.ContentLength > 0)
            {
                var manager = ServiceProvider.Get<ICompetitionsManager>();
                var url = AcceptCsvFile(playersFile, "CompetitionPlayers");
                manager.UpdateCompetitionPlayers(competitionId, url.ToString());
            }

            return RedirectToAction("Details", new { id = competitionId });
        }