public ActionResult DeleteFolder(FolderViewModel model) { try { var item = Mapper.Map<Folder>(model); var result = Db.Delete(item); } catch (Exception ex) { return View("ServerError", (object)string.Format("Ошибка при удалении папки {0}.", model.Name)); } return RedirectToAction("Edit", new { id = model.ParentFolderId }); }
public ActionResult CreateFolder(FolderViewModel model) { var item = new Folder(); if (model.Id > 0) { item = FileService.GetFolder(model.Id); } item = Mapper.Map(model, item); try { FileService.CreateFolder(UserInfo.Email, item); } catch (UserNotFoundException ex) { return View("ServerError", ex.Message); } catch (Exception ex) { Logger.Fatal(ex); return View("ServerError", (object)"Произошла непредвиденная ошибка"); } return RedirectToAction("Edit", new { id = item.Id}); }
public ActionResult CreateFolder(FolderViewModel model) { var user = YandexAuth.GetUser(Request); //найдём пользователя в БД var userFromDb = Db.SingleOrDefault<User>(u => u.Email == user.default_email); if (userFromDb != null) { var item = new Folder(); if (model.Id > 0) { item = Db.Get<Folder>(model.Id); } item = Mapper.Map(model, item); item.LogDate = DateTime.Now; item.User = new User { Id = userFromDb.Id }; var result = Db.SaveOrUpdate(item); return RedirectToAction("Edit", new {id = result}); } return View("ServerError", (object)"Не удалось определить пользователя"); }
public ActionResult DeleteFolder(FolderViewModel model) { try { var item = Mapper.Map<Folder>(model); FileService.DeleteFolder(item); } catch (Exception ex) { Logger.Fatal(ex); return View("ServerError", (object) $"Ошибка при удалении папки {model.Name}."); } return RedirectToAction("Edit", new { id = model.ParentFolderId }); }
private FolderViewModel CreateFolderViewModel(FolderViewModel model) { var items = Mapper.Map<IEnumerable<FileViewModel>>(Db.Where<Files>(f => f.Folder.Id == model.Id)); //TODO дублирует код из PageController var menuItems = MenuItemService.Select(); model.MenuItems = Mapper.Map<ICollection<SelectListItem>>(menuItems); var byUrl = MenuItemService.ByUrl(model.IndexUrl); if (byUrl != null) { var selected = model.MenuItems.FirstOrDefault(m => m.Value == byUrl.Id.ToString()); selected.Selected = true; } var subs = GetSubDirectories(model.Id); model.Files = items; model.SubDirectories = subs; return model; }
public ActionResult Index(int? id) { //ViewData["MetMenuActive"] = folder.Contains("Методическая работа/") ? "active" : ""; //ViewData["DocsMenuActive"] = folder.Contains("Документы/") ? "active" : ""; var model = new FolderViewModel(); if (id.HasValue) { var item = Db.Get<Folder>(id.Value); model = Mapper.Map(item, model); if (item != null) { model = CreateFolderViewModel(model); return View(model); } return View("ServerError", (object)string.Format("Отсутствует папка.")); } model.SubDirectories = GetSubDirectories(null); return View(model); }
public ActionResult Edit(int? id) { var model = new FolderViewModel(); if (id.HasValue) { var item = Db.Get<Folder>(id.Value); model = Mapper.Map(item, model); if (item != null) { model = CreateFolderViewModel(model); return View(model); } return View("ServerError", (object)string.Format("Отсутствует папка.")); } model.SubDirectories = GetSubDirectories(null); return View(model); }
private FolderViewModel CreateFolderViewModel(FolderViewModel model) { var files = Db.Where<Files>(f => f.Folder.Id == model.Id); var items = files.Select(file => new FileViewModel { Id = file.Id, Name = file.Name }); var subs = GetSubDirectories(model.Id); model.Files = items; model.SubDirectories = subs; return model; }