public ActionResult LogOff() { if (HttpContext.User.IsInRole("CandidateAdmin")) { EventsUserViewModel eventsModel = Session["EventsUserCandidate"] as EventsUserViewModel; if (eventsModel != null && eventsModel.ListEvents.Count > 0) { return(RedirectToAction("Index", "EventUser")); } } AuthManager.SignOut(DefaultAuthenticationTypes.ApplicationCookie); return(RedirectToAction("Index", "PeoplesAward")); }
public ActionResult RemoveOperation(string Key) { try { EventsUserViewModel eventsModel = Session["EventsUserCandidate"] as EventsUserViewModel; if (eventsModel != null) { var eventExec = eventsModel.ListEvents.FirstOrDefault(x => x.KeyObjectStr == Key); if (eventExec != null) { eventsModel.DeleteEventFromList(eventExec); } if (eventsModel.ListEvents.Count == 0) { Session.Remove("EventsUserCandidate"); return(RedirectToAction("Index", "PeoplesAward")); } else { Session["EventsUserCandidate"] = eventsModel; ViewBag.Title = "Список изменений"; if (Request.IsAjaxRequest()) { return(Json(new { Key })); } else { return(RedirectToAction("Index", "EventUser")); } } } } catch (Exception e) { if (Request.IsAjaxRequest()) { return(Json(new { error = e.InnerException.Message })); } else { return(View("Error", ErrorHelper.GetErrorModel(e.Message, e.InnerException + e.StackTrace, DEFAULT_BACK_ERROR_URL))); } } return(RedirectToAction("PeoplesAward", "Index")); }
public ActionResult Index() { try { EventsUserViewModel eventsModel = Session["EventsUserCandidate"] as EventsUserViewModel; if (eventsModel != null) { ViewBag.Title = "Список изменений"; return(View("Index", eventsModel)); } } catch (Exception e) { Logger.LogException(e); return(View("Error", ErrorHelper.GetErrorModel(e.Message, e.InnerException + e.StackTrace, DEFAULT_BACK_ERROR_URL))); } return(RedirectToAction("Index", "PeoplesAward")); }
public ActionResult DeleteAward(int id) { if (id <= 0) { if (Request.IsAjaxRequest()) { return(Json(new { error = "Не найдена награда с таким идентификатором" })); } else { return(View("Error", ErrorHelper.GetErrorModel("Не найдена награда с таким идентификатором", "", DEFAULT_BACK_ERROR_URL))); } } try { if (HttpContext.User.IsInRole("CandidateAdmin")) { AwardViewModel awardModel = repository.GetAwardById(id); if (awardModel == null) { if (Request.IsAjaxRequest()) { return(Json(new { error = "Не найдена награда с таким идентификатором" })); } else { return(View("Error", ErrorHelper.GetErrorModel("Не найдена награда с таким идентификатором", "", DEFAULT_BACK_ERROR_URL))); } } var events = Session["EventsUserCandidate"] as EventsUserViewModel; if (events == null) { events = new EventsUserViewModel(); Session.Add("EventsUserCandidate", events); } EventUser userEvent; userEvent = new EventUser(EventOperationType.DeleteRecord, EventObjectType.Award, awardModel); events.AddEventToList(userEvent); Session["EventsUserCandidate"] = events; if (Request.IsAjaxRequest()) { return(Json("")); } else { return(RedirectToAction("Index")); } } repository.DeleteAward(id); Logger.logger.Trace(String.Format("Удалена награда:\n Id={0}", id)); if (Request.IsAjaxRequest()) { return(Json(new { id })); } else { return(RedirectToAction("Index")); } } catch (Exception e) { Logger.LogException(e); if (Request.IsAjaxRequest()) { return(Json(new { error = e.InnerException.Message })); } else { return(View("Error", ErrorHelper.GetErrorModel(e.Message, e.InnerException + e.StackTrace, DEFAULT_BACK_ERROR_URL))); } } }
public ActionResult SaveAward([Bind(Include = "Id,NameAward,DescriptionAward,ImageIsEmpty")] AwardViewModel awardModel) { bool saveCreateMode = (awardModel.Id == 0) ? true : false; if (ModelState.IsValid) { try { if (!CheckNameAward(awardModel.NameAward, awardModel.Id)) { ModelState.AddModelError("NameAward", "Такое название награды уже имеется"); if (saveCreateMode) { return(PartialView("CreateAwardPartial", awardModel)); } else { return(View("CreateEditAward", awardModel)); } } if (Request.Files.Count > 0) { HttpPostedFileBase file = Request.Files["PhotoAward"]; using (var bin = new BinaryReader(file.InputStream)) { if (file.ContentLength >= 10) { awardModel.PhotoAward = bin.ReadBytes(file.ContentLength); awardModel.PhotoMIMEType = file.ContentType; } } } // если изменяем запись if (!saveCreateMode && awardModel.PhotoAward == null) { // если фото было удалено пользователем if (awardModel.ImageIsEmpty) { awardModel.PhotoAward = null; awardModel.PhotoMIMEType = ""; } else { AwardViewModel tmpAwardModel = repository.GetAwardById(awardModel.Id); awardModel.PhotoAward = tmpAwardModel.PhotoAward; awardModel.PhotoMIMEType = tmpAwardModel.PhotoMIMEType; } } else { if (awardModel.PhotoAward == null) { awardModel.PhotoMIMEType = ""; } } // проверка на обязательный ввод Фото награды if (awardModel.PhotoAward == null || awardModel.PhotoAward.Length <= 0) { if (!saveCreateMode) { ModelState.AddModelError("PhotoAward", "Это поле должно быть заполнено"); return(View("CreateEditAward", awardModel)); } } if (HttpContext.User.IsInRole("CandidateAdmin")) { var events = Session["EventsUserCandidate"] as EventsUserViewModel; if (events == null) { events = new EventsUserViewModel(); Session.Add("EventsUserCandidate", events); } EventUser userEvent; if (saveCreateMode) { userEvent = new EventUser(EventOperationType.AddRecord, EventObjectType.Award, awardModel); } else { userEvent = new EventUser(EventOperationType.UpdateRecord, EventObjectType.Award, awardModel); } events.AddEventToList(userEvent); Session["EventsUserCandidate"] = events; if (Request.IsAjaxRequest()) { return(Json("")); } else { return(RedirectToAction("Index")); } } int saveID = repository.SaveAward(awardModel); if (saveCreateMode) { Logger.logger.Trace(String.Format("Добавлена награда:\n NameAward = {0}, DescriptionAward = {1}", awardModel.NameAward, awardModel.DescriptionAward)); } else { Logger.logger.Trace(String.Format("Изменена награда:\n Id={0}, NameAward = {1}, DescriptionAward = {2}", awardModel.Id, awardModel.NameAward, awardModel.DescriptionAward)); } if (saveCreateMode) { awardModel = repository.GetAwardById(saveID); return(PartialView("AwardSinglePartial", awardModel)); } else { return(RedirectToAction("Index")); } } catch (Exception e) { Logger.LogException(e); return(View("Error", ErrorHelper.GetErrorModel(e.Message, e.InnerException + e.StackTrace, DEFAULT_BACK_ERROR_URL))); } } else { if (saveCreateMode) { return(PartialView("CreateAwardPartial", awardModel)); } else { return(View("CreateEditAward", awardModel)); } } }
public ActionResult ApplyOperation(string Key) { try { EventsUserViewModel eventsModel = Session["EventsUserCandidate"] as EventsUserViewModel; if (eventsModel != null) { var eventExec = eventsModel.ListEvents.FirstOrDefault(x => x.KeyObjectStr == Key); if (eventExec != null) { if (eventExec.TypeObject == EventObjectType.Award) { var model = eventExec.ObjectModel as AwardViewModel; if (model != null) { if (eventExec.TypeOperation == EventOperationType.AddRecord) { int saveID = repositoryAward.SaveAward(model); Logger.logger.Trace(String.Format("Добавлена награда:\n NameAward = {0}, DescriptionAward = {1}", model.NameAward, model.DescriptionAward)); } if (eventExec.TypeOperation == EventOperationType.UpdateRecord) { int saveID = repositoryAward.SaveAward(model); Logger.logger.Trace(String.Format("Изменена награда:\n Id={0}, NameAward = {1}, DescriptionAward = {2}", model.Id, model.NameAward, model.DescriptionAward)); } if (eventExec.TypeOperation == EventOperationType.DeleteRecord) { repositoryAward.DeleteAward(model.Id); Logger.logger.Trace(String.Format("Удалена награда:\n Id={0}", model.Id)); } } } if (eventExec.TypeObject == EventObjectType.People) { var model = eventExec.ObjectModel as PeopleViewModel; if (model != null) { if (eventExec.TypeOperation == EventOperationType.AddRecord) { int saveID = repositoryPeople.SavePeople(model); Logger.logger.Trace(String.Format("Добавлен человек:\n FirstName = {0}, LastName = {1}", model.FirstName, model.LastName)); } if (eventExec.TypeOperation == EventOperationType.UpdateRecord) { int saveID = repositoryPeople.SavePeople(model); Logger.logger.Trace(String.Format("Изменен человек:\n Id={0}, FirstName = {1}, LastName = {2}", model.Id, model.FirstName, model.LastName)); } if (eventExec.TypeOperation == EventOperationType.DeleteRecord) { repositoryPeople.DeletePeople(model.Id); Logger.logger.Trace(String.Format("Удален человек:\n Id={0}", model.Id)); } } } eventsModel.DeleteEventFromList(eventExec); } if (eventsModel.ListEvents.Count == 0) { Session.Remove("EventsUserCandidate"); return(RedirectToAction("Index", "PeoplesAward")); } else { Session["EventsUserCandidate"] = eventsModel; ViewBag.Title = "Список изменений"; if (Request.IsAjaxRequest()) { return(Json(new { Key })); } else { return(RedirectToAction("Index", "EventUser")); } } } } catch (Exception e) { if (Request.IsAjaxRequest()) { return(Json(new { error = e.InnerException.Message })); } else { return(View("Error", ErrorHelper.GetErrorModel(e.Message, e.InnerException + e.StackTrace, DEFAULT_BACK_ERROR_URL))); } } return(RedirectToAction("Index", "PeoplesAward")); }