Example #1
0
        public async Task <ActionResult> Edit(CompetitionViewModel competitionModel)
        {
            //if (!ModelState.IsValid) throw null;


            var selectedCompetition = await _competitionService.Find(competitionModel.Id);

            if (selectedCompetition.LogoImage != competitionModel.LogoImage)
            {
                var tmpPath       = Server.MapPath("~/App_Data/tmp/");
                var logoImagePath = Server.MapPath("~/App_Data/Logo_Image/");
                await
                CopyFileAsync(tmpPath + competitionModel.LogoImage,
                              logoImagePath + competitionModel.LogoImage);

                try
                {
                    System.IO.File.Delete(logoImagePath + selectedCompetition.LogoImage);
                }
                catch (Exception)
                {
                }
            }

            selectedCompetition.IsPrintCardActive = competitionModel.IsPrintCardActive;
            selectedCompetition.IsReadyActive     = competitionModel.IsReadyActive;
            selectedCompetition.IsRegisterActive  = competitionModel.IsRegisterActive;

            selectedCompetition.LogoImage = competitionModel.LogoImage;

            selectedCompetition.Name               = competitionModel.Name;
            selectedCompetition.PrintCardEndDate   = competitionModel.PrintCardEndDate;
            selectedCompetition.PrintCardStartDate = competitionModel.PrintCardStartDate;
            selectedCompetition.ReadyEndDate       = competitionModel.ReadyEndDate;
            selectedCompetition.ReadyStartDate     = competitionModel.ReadyStartDate;

            selectedCompetition.RegisterStartDate = competitionModel.RegisterStartDate;
            selectedCompetition.RegisterEndDate   = competitionModel.RegisterEndDate;
            selectedCompetition.Rule = competitionModel.Rule.ToSafeHtml();

            selectedCompetition.MaxCommonTechnicalStaffs = competitionModel.MaxCommonTechnicalStaffs;


            await _dbContext.SaveChangesAsync();

            return(new HttpStatusCodeResult(HttpStatusCode.OK));
        }