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));
        }
Example #6
0
        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 }));
        }
Example #7
0
        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));
     }
 }