コード例 #1
0
        public ActionResult RemoveOrRestore(long userId, string key, bool needRemove)
        {
            if (IdValidator.IsInvalid(userId) || string.IsNullOrWhiteSpace(key) ||
                WebSettingsConfig.Instance.IsSectionForbidden(SectionId.UserTasks))
            {
                return(JsonResultHelper.Error());
            }

            RepositoryFactory   repositoryFactory   = WebSettingsConfig.Instance.GetRepositoryFactory();
            UserTasksRepository userTasksRepository = repositoryFactory.CreateUserRepository(userId);
            bool success = userTasksRepository.RemoveOrRestoreTask(key, needRemove);

            if (success)
            {
                SendMail(string.Format("Пользователь {0} {1} таск {2}.", userId, needRemove ? "удалил" : "восстановил", key));
                return(JsonResultHelper.Success(true));
            }

            LoggerWrapper.LogTo(LoggerName.Errors).ErrorFormat(
                "UserTasksController.RemoveOrRestore. Для пользователя с идентификатором {0} не удалось {1} таск с идентификатором {2}",
                userId, needRemove ? "удалить" : "восстановить", key);
            return(JsonResultHelper.Error());
        }