public List <Models.File> LoadByUserId(int id) { if (id != null) { List <Models.File> files = new List <Models.File>(); BL.Artwork artwork = new BL.Artwork(); Models.FileType fileType = new Models.FileType(); db.Files.Where(f => f.UserId == id) .ToList() .ForEach(f => files .Add(new Models.File { Id = f.Id, ArtworkId = f.ArtworkId, UserId = f.UserId, FileName = f.FileName, FileType = (Models.FileType)f.FileType, ContentType = f.ContentType, Content = f.Content, Artwork = artwork.LoadById(f.ArtworkId) })); return(files); } else { return(null); } }
public bool Delete(int id) { BL.Artwork artwork = new BL.Artwork(); Net.Models.Artwork _artwork = new Net.Models.Artwork(); Net.Models.Message _message = new Net.Models.Message(); _artwork = artwork.LoadById(id); var existArt = db.Artworks.SingleOrDefault(x => x.Id == id); var existFile = db.Files.SingleOrDefault(f => f.ArtworkId == id); var existCol = db.Collections.SingleOrDefault(f => f.Id == _artwork.CollectionMessageId); var existMsg = db.Messages.Where(a => a.CollectionId == _artwork.CollectionMessageId).ToList(); if (existArt != null || existFile != null || existCol != null) { db.Artworks.Remove(existArt); db.Files.Remove(existFile); db.Collections.Remove(existCol); existMsg.ForEach(x => db.Messages.Remove(x)); db.SaveChanges(); return(true); } else { return(false); } }
public Models.File LoadByArtworkId(int id) { if (id != null) { List <Models.File> files = new List <Models.File>(); BL.Artwork artwork = new BL.Artwork(); var file = db.Files.FirstOrDefault(f => f.ArtworkId == id); if (file != null) { Models.File f = new Models.File { Id = file.Id, ArtworkId = file.ArtworkId, UserId = file.UserId, Content = file.Content, ContentType = file.ContentType, FileName = file.FileName, Artwork = artwork.LoadById(file.ArtworkId) }; return(f); } else { return(null); } } else { return(null); } }
// GET: Profile public ActionResult Index() { if (Authenticate.IsAuthenticated()) { if (ViewBag.Message == null) { ViewBag.Message = "Profile"; } UserGalleryArtworkFile ugaf = new UserGalleryArtworkFile(); ugaf.User = (Octo.Net.Models.User)Session["user"]; _gallery = new BL.Gallery(); ugaf.Galleries = _gallery.LoadByUserId(ugaf.User.Id); _artwork = new BL.Artwork(); _artworks = new List<Net.Models.Artwork>(); _file = new BL.File(); _files = new List<Net.Models.File>(); List<int> galleryIDs = new List<int>(); foreach (Net.Models.Gallery gallery in ugaf.Galleries) { galleryIDs.Add(gallery.Id); } foreach (int id in galleryIDs) { _files.AddRange(_file.LoadByUserGalleryId(ugaf.User.Id, id)); } // Add avatar _files.AddRange(_file.LoadByUserFileTypeId(ugaf.User.Id, Net.Models.FileType.Avatar)); ugaf.Files = _files; foreach (Net.Models.File file in _files) { _artworks.Add(file.Artwork); } ugaf.Artworks = _artworks; if (ViewBag.Message == null) { ViewBag.Message = "Galleries"; } return View(ugaf); } else { return RedirectToAction("Login", "Login", new { returnurl = HttpContext.Request.Url }); } }
public ActionResult Delete(UserGalleryArtworkFile ugfa) { try { _artwork = new BL.Artwork(); _artwork.Delete(ugfa.File.Artwork.Id); return RedirectToAction("Index"); } catch (Exception ex) { ViewBag.Message = ex.Message; return View(ugfa); } }
// GET: Gallery public ActionResult Galleries(int id) { if (Authenticate.IsAuthenticated()) { UserGalleryArtworkFile ugaf = new UserGalleryArtworkFile(); _gallery = new BL.Gallery(); ugaf.Galleries = _gallery.LoadByUserId(id); _artwork = new BL.Artwork(); _artworks = new List<Net.Models.Artwork>(); _file = new BL.File(); _files = new List<Net.Models.File>(); List<int> galleryIDs = new List<int>(); foreach (Net.Models.Gallery gallery in ugaf.Galleries) { galleryIDs.Add(gallery.Id); } foreach (int galleryId in galleryIDs) { _files.AddRange(_file.LoadByUserGalleryId(id, galleryId)); } ugaf.Files = _files; foreach (Net.Models.File file in _files) { _artworks.Add(file.Artwork); } ugaf.Artworks = _artworks; if (ViewBag.Message == null) { ViewBag.Message = "Galleries"; } return View(ugaf); } else { return RedirectToAction("Login", "Login", new { returnurl = HttpContext.Request.Url }); } }
public List <Models.File> Load() { List <Models.File> files = new List <Models.File>(); BL.Artwork artwork = new BL.Artwork(); db.Files.ToList().ForEach(f => files .Add(new Models.File { Id = f.Id, FileName = f.FileName, ContentType = f.ContentType, Content = f.Content, UserId = f.UserId, ArtworkId = f.ArtworkId, Artwork = artwork.LoadById(f.ArtworkId) })); return(files); }
public ActionResult ImageUpload() { if (Authenticate.IsAuthenticated()) { if (ViewBag.Message == null) { ViewBag.Message = "Profile"; } UserGalleryArtworkFile ugaf = new UserGalleryArtworkFile(); ugaf.User = (Net.Models.User)Session["user"]; _gallery = new BL.Gallery(); ugaf.Galleries = _gallery.LoadByUserId(ugaf.User.Id); _artwork = new BL.Artwork(); _artworks = new List<Net.Models.Artwork>(); List<int> galleryIDs = new List<int>(); foreach (Net.Models.Gallery gallery in ugaf.Galleries) { galleryIDs.Add(gallery.Id); } foreach (int i in galleryIDs) { _artworks.AddRange(_artwork.LoadByGalleryId(i)); } ugaf.Artworks = _artworks; if (ViewBag.Message == null) { ViewBag.Message = "Galleries"; } return View(ugaf); } else { return RedirectToAction("Login", "Login", new { returnurl = HttpContext.Request.Url }); } }
public List <Models.File> LoadByUserGalleryId(int userId, int galleryId) { if (userId != null && galleryId != null) { List <Models.File> files = new List <Models.File>(); BL.Artwork artwork = new BL.Artwork(); var results = (from f in db.Files join a in db.Artworks on f.ArtworkId equals a.Id where (a.GalleryId == galleryId && f.UserId == userId) select new { f.Id, f.ArtworkId, f.UserId, f.FileName, f.ContentType, f.Content, f.FileType }).ToList(); foreach (var r in results) { files.Add(new Models.File { Id = r.Id, ArtworkId = r.ArtworkId, UserId = r.UserId, FileName = r.FileName, ContentType = r.ContentType, Content = r.Content, FileType = (Models.FileType)r.FileType, Artwork = artwork.LoadById(r.ArtworkId) });; } return(files); } else { return(null); } }
public List <Models.File> LoadByUserFileTypeId(int userId, Net.Models.FileType fileType) { if (fileType != null) { List <Models.File> files = new List <Models.File>(); BL.Artwork artwork = new BL.Artwork(); var results = (from f in db.Files where (f.FileType == (tblFileType)fileType && f.UserId == userId) select new { f.Id, f.ArtworkId, f.UserId, f.FileName, f.ContentType, f.Content, f.FileType }).ToList(); foreach (var r in results) { files.Add(new Models.File { Id = r.Id, ArtworkId = r.ArtworkId, UserId = r.UserId, FileName = r.FileName, ContentType = r.ContentType, Content = r.Content, FileType = (Models.FileType)r.FileType, Artwork = artwork.LoadById(r.ArtworkId) }); } return(files); } else { return(null); } }
public ActionResult AddToGallery(UserGalleryArtworkFile ugfa, Net.Models.File file, HttpPostedFileBase upload, int id) { try { ugfa.User = (Net.Models.User)Session["user"]; file = new Net.Models.File { FileName = System.IO.Path.GetFileName(upload.FileName), FileType = FileType.Photo, ContentType = upload.ContentType, User = ugfa.User, UserId = ugfa.User.Id, }; using (var reader = new System.IO.BinaryReader(upload.InputStream)) { file.Content = reader.ReadBytes(upload.ContentLength); } ugfa.Files = new List<Net.Models.File> { file }; ugfa.Artworks[0].DateCreated = DateTime.UtcNow; ugfa.Artworks[0].GalleryId = id; BL.Artwork artworkHelper = new BL.Artwork(); artworkHelper.Insert(ugfa.Artworks[0], ugfa.Files[0]); return RedirectToAction("Index"); } catch (Exception ex) { ViewBag.Message = ex.Message; return View(ugfa); } }
public ActionResult Edit(UserGalleryArtworkFile ugaf, Net.Models.File file, HttpPostedFileBase upload) { if (ModelState.IsValid) { //ugaf.User = (Net.Models.User)Session["user"]; Net.Models.User user = (Net.Models.User)Session["user"]; BL.User userHelper = new BL.User(); BL.File fileHelper = new BL.File(); BL.Artwork artworkHelper = new BL.Artwork(); var oldFile = fileHelper.LoadByUserId(user.Id); Net.Models.File existingFile = new Net.Models.File(); Net.Models.User newUser = userHelper.LoadById(user.Id); using (userHelper = new BL.User()) { newUser.FirstName = ugaf.User.FirstName; newUser.LastName = ugaf.User.LastName; newUser.Password = ugaf.User.Password; newUser.CommissionActive = ugaf.User.CommissionActive; } foreach (var f in oldFile) { existingFile.ArtworkId = f.ArtworkId; existingFile.Content = f.Content; existingFile.ContentType = f.ContentType; existingFile.FileName = f.FileName; existingFile.FileType = f.FileType; existingFile.Id = f.Id; existingFile.UserId = f.UserId; existingFile.Artwork = artworkHelper.LoadById(f.ArtworkId); existingFile.User = newUser; } try { if (upload != null && upload.ContentLength > 0) { file = new Net.Models.File { Id = existingFile.Id, FileName = System.IO.Path.GetFileName(upload.FileName), FileType = FileType.Avatar, ContentType = upload.ContentType, Content = existingFile.Content, Artwork = existingFile.Artwork, User = existingFile.User, UserId = existingFile.UserId, ArtworkId = existingFile.ArtworkId }; using (var reader = new System.IO.BinaryReader(upload.InputStream)) { file.Content = reader.ReadBytes(upload.ContentLength); } System.Diagnostics.Debug.WriteLine(newUser.Id); System.Diagnostics.Debug.WriteLine(file.FileName); ugaf.User.Files = new List<Net.Models.File> { file }; userHelper.Update(newUser, file); } else { ugaf.User = newUser; userHelper.Update(newUser, existingFile); } return RedirectToAction("Index"); } catch (Exception ex) { ViewBag.Message = ex.Message; return View(ugaf); } } return View(); }