public ActionResult Delete(int id) { Curs toDelete = db.Cursuri.Find(id); List <int> sids = new List <int>(); foreach (var sect in toDelete.Sectiuni) { sids.Add(sect.SectiuneId); } foreach (int sid in sids) { Sectiune sectiune = db.Sectiuni.Find(sid); List <int> fids = new List <int>(); foreach (var fm in sectiune.FileModels) { fids.Add(fm.FileId); } foreach (int fid in fids) { // delete from server FileInfo fileInfo = new FileInfo(db.FileModels.Find(fid).FilePath); if (fileInfo.Exists) { fileInfo.Delete(); } db.FileModels.Remove(db.FileModels.Find(fid)); } db.Sectiuni.Remove(sectiune); } db.Cursuri.Remove(toDelete); TempData["message"] = "Cursul a fost șters"; db.SaveChanges(); return(RedirectToAction("Index")); }
public ActionResult Edit(int id, Sectiune reqSect) { try { if (ModelState.IsValid) { Sectiune toModify = db.Sectiuni.Find(id); toModify.Denumire = reqSect.Denumire; toModify.Descriere = Sanitizer.GetSafeHtmlFragment(reqSect.Descriere); db.SaveChanges(); return(RedirectToAction("Show", "Cursuri", new { id = toModify.Curs.CursId })); } ViewBag.curs = db.Cursuri.Find(reqSect.Curs.CursId); return(View(reqSect)); } catch (DbEntityValidationException ex) { foreach (var entityValidationErrors in ex.EntityValidationErrors) { foreach (var validationError in entityValidationErrors.ValidationErrors) { Response.Write("Property: " + validationError.PropertyName + " Error: " + validationError.ErrorMessage); } } TempData["message"] = "Eroare la modificarea secțiunii"; return(View(reqSect)); } }
public ActionResult Delete(int id) { Sectiune toRemove = db.Sectiuni.Find(id); if (!CheckProf(toRemove.Curs)) { return(RedirectToAction("Show", "Cursuri", new { id = toRemove.Curs.CursId })); } int cursId = toRemove.Curs.CursId; List <int> fids = new List <int>(); foreach (var fm in toRemove.FileModels) { fids.Add(fm.FileId); } foreach (int fid in fids) { // delete from server FileInfo fileInfo = new FileInfo(db.FileModels.Find(fid).FilePath); if (fileInfo.Exists) { fileInfo.Delete(); } db.FileModels.Remove(db.FileModels.Find(fid)); } db.Sectiuni.Remove(toRemove); db.SaveChanges(); return(RedirectToAction("Show", "Cursuri", new { id = cursId })); }
public ActionResult Edit(int id) { Sectiune toEdit = db.Sectiuni.Find(id); if (!CheckProf(toEdit.Curs)) { return(RedirectToAction("Show", "Cursuri", new { id = toEdit.Curs.CursId })); } Curs curs = toEdit.Curs; ViewBag.curs = curs; return(View(toEdit)); }
public ActionResult New(int id) { Curs curs = db.Cursuri.Find(id); if (!CheckProf(curs)) { return(RedirectToAction("Show", "Cursuri", new { id = curs.CursId })); } Sectiune sectiune = new Sectiune(); if (TempData.ContainsKey("message")) { ViewBag.message = TempData["message"]; } ViewBag.curs = curs; return(View(sectiune)); }
public ActionResult Delete(int id) { FileModel fileModel = db.FileModels.Find(id); Sectiune sectiune = fileModel.Sectiune; // delete from server FileInfo fileInfo = new FileInfo(fileModel.FilePath); if (fileInfo.Exists) { fileInfo.Delete(); } sectiune.FileModels.Remove(fileModel); db.FileModels.Remove(fileModel); db.SaveChanges(); return(RedirectToAction("Show", "Cursuri", new { id = sectiune.Curs.CursId })); }
public ActionResult AddFile(int id, HttpPostedFileBase file) { FileModel fm = new FileModel(); Sectiune sectiune = db.Sectiuni.Find(id); if (file == null) { return(RedirectToAction("Show", "Cursuri", new { id = sectiune.Curs.CursId })); } fm.FileName = file.FileName; if (!System.IO.Directory.Exists(Server.MapPath("~/Files/" + User.Identity.GetUserId() + "/"))) { System.IO.Directory.CreateDirectory(Server.MapPath("~/Files/" + User.Identity.GetUserId() + "/")); } string uploadFolder = Server.MapPath("~/Files/" + User.Identity.GetUserId() + "/"); fm.FilePath = uploadFolder + fm.FileName; file.SaveAs(fm.FilePath); // save pe server fm.Date = DateTime.Now; fm.FileExtension = Path.GetExtension(file.FileName); fm.FileExtension = fm.FileExtension == ".rar" ? ".zip" : fm.FileExtension; // turn rar in zip if (fm.FileExtension != ".pdf" && fm.FileExtension != ".ppx" && fm.FileExtension != ".txt" && fm.FileExtension != ".zip") { fm.FileExtension = ".other"; } if (User.IsInRole("Admin")) { fm.ProfNume = fm.ProfPrenume = "Admin"; } else { string uid = User.Identity.GetUserId(); Profesor profesor = db.Profesors.Where(p => p.UserId == uid) .ToList().First(); fm.ProfNume = profesor.Nume; fm.ProfPrenume = profesor.Prenume; } fm.Sectiune = sectiune; sectiune.FileModels.Add(fm); db.SaveChanges(); return(RedirectToAction("Show", "Cursuri", new { id = sectiune.Curs.CursId })); }
public ActionResult New(int id, Sectiune newSec) { try { if (ModelState.IsValid) { Curs curs = db.Cursuri.Find(id); System.Diagnostics.Debug.WriteLine(newSec.Descriere); newSec.Descriere = Sanitizer.GetSafeHtmlFragment(newSec.Descriere); // for security db.Sectiuni.Add(newSec); curs.Sectiuni.Add(newSec); newSec.Curs = curs; if (!CheckProf(newSec.Curs)) { return(RedirectToAction("Show", "Cursuri", new { id = id })); } TempData["message"] = "Secțiune adăugată"; db.SaveChanges(); return(RedirectToAction("Show", "Cursuri", new { id = id })); } ViewBag.curs = db.Cursuri.Find(id); return(View(newSec)); } catch (DbEntityValidationException ex) { foreach (var entityValidationErrors in ex.EntityValidationErrors) { foreach (var validationError in entityValidationErrors.ValidationErrors) { Response.Write("Property: " + validationError.PropertyName + " Error: " + validationError.ErrorMessage); } } TempData["message"] = "Eroare la adăugarea secțiunii"; ViewBag.curs = db.Cursuri.Find(id); return(View(newSec)); } }