예제 #1
0
        public ActionResult Edit(AcadmicYearModel model, FormCollection frm, bool continueEditing)
        {
            if (!_permissionService.Authorize("ManageAcadmicYear"))
            {
                return(AccessDeniedView());
            }

            var user = _userContext.CurrentUser;
            // Check for duplicate acadmicyear, if any
            var checkAcadmicYear = _smsService.CheckAcadmicYearExists(model.Name, model.Id);

            if (checkAcadmicYear)
            {
                ModelState.AddModelError("Name", "AcadmicYear with the same name already exists. Please choose a different name.");
            }

            if (ModelState.IsValid)
            {
                var objAcadmicYear = _smsService.GetAcadmicYearById(model.Id);
                if (objAcadmicYear != null)
                {
                    model.CreatedOn           = objAcadmicYear.CreatedOn;
                    objAcadmicYear            = model.ToEntity(objAcadmicYear);
                    objAcadmicYear.ModifiedOn = DateTime.Now;

                    if (model.IsActive)
                    {
                        _smsService.DeactivateAllAcadmicYears();
                    }

                    _smsService.UpdateAcadmicYear(objAcadmicYear);
                }
            }
            else
            {
                return(View(model));
            }

            SuccessNotification("Acadmic Year updated successfully.");
            if (continueEditing)
            {
                return(RedirectToAction("Edit", new { id = model.Id }));
            }
            return(RedirectToAction("List"));
        }