public JsonResult DeleteCompletedAssignment(string id)
        {
            if (String.IsNullOrEmpty(id))
            {
                Response.StatusCode = (int)HttpStatusCode.BadRequest;
                return(Json(new { Result = "Error" }));
            }
            try
            {
                Guid guid = new Guid(id);
                CompletedAssignmentFileDetails fileDetail = _context.CompletedAssignmentFileDetails.Find(guid);
                if (fileDetail == null)
                {
                    Response.StatusCode = (int)HttpStatusCode.NotFound;
                    return(Json(new { Result = "Error" }));
                }

                //Remove from database
                _context.CompletedAssignmentFileDetails.Remove(fileDetail);
                _context.SaveChanges();

                //Delete file from the file system
                var path = Path.Combine(Server.MapPath("~/App_Data/Upload/"), fileDetail.FileId + fileDetail.Extension);
                if (System.IO.File.Exists(path))
                {
                    System.IO.File.Delete(path);
                }
                return(Json(new { Result = "OK" }));
            }
            catch (Exception ex)
            {
                return(Json(new { Result = "ERROR", Message = ex.Message }));
            }
        }
        public ActionResult _EditAssignment(int classroomId, VirtualClassroomViewModel model)
        {
            var completedAssignment = _context.CompletedAssignments.Find(model.CompletedAssignment.Id);
            List <CompletedAssignmentFileDetails> fileDetails = new List <CompletedAssignmentFileDetails>();

            for (int i = 0; i < Request.Files.Count; i++)
            {
                var file = Request.Files[i];

                if (file != null && file.ContentLength > 0)
                {
                    var fileName = Path.GetFileName(file.FileName);
                    CompletedAssignmentFileDetails fileDetail = new CompletedAssignmentFileDetails()
                    {
                        FileName              = fileName,
                        Extension             = Path.GetExtension(fileName),
                        FileId                = Guid.NewGuid(),
                        CompletedAssignmentId = model.CompletedAssignment.Id
                    };
                    fileDetails.Add(fileDetail);

                    var path = Path.Combine(Server.MapPath("~/App_Data/Upload/"),
                                            fileDetail.FileId + fileDetail.Extension);
                    file.SaveAs(path);
                }
            }


            completedAssignment.Id                = model.CompletedAssignment.Id;
            completedAssignment.AssignmentId      = model.CompletedAssignment.AssignmentId;
            completedAssignment.Title             = model.CompletedAssignment.Title;
            completedAssignment.Description       = model.CompletedAssignment.Description;
            completedAssignment.CompletedDateTime = DateTime.Now;
            completedAssignment.CompletedAssignmentFileDetails = fileDetails;

            _context.CompletedAssignments.AddOrUpdate(completedAssignment);
            return(View("ClassroomTasks", new VirtualClassroomViewModel()
            {
                VirtualClassroom = _context.VirtualClassrooms.Find(classroomId)
            }));
        }
        public async Task <ActionResult> CompletedAssignment(VirtualClassroomViewModel classroom, int id)
        {
            var user = await UserManager.FindByIdAsync(User.Identity.GetUserId());

            CompletedAssignment completedAssignment = _context.CompletedAssignments.Where(a => a.AssignmentId == id).Single(s => s.StudentId == user.Student.StudentId && s.VirtualClassroomId == classroom.VirtualClassroom.Id);

            completedAssignment.Title       = classroom.CompletedAssignment.Title;
            completedAssignment.Description = classroom.CompletedAssignment.Description;
            completedAssignment.Submitted   = true;

            List <CompletedAssignmentFileDetails> fileDetails = new List <CompletedAssignmentFileDetails>();

            for (int i = 0; i < Request.Files.Count; i++)
            {
                var file = Request.Files[i];

                if (file != null && file.ContentLength > 0)
                {
                    var fileName = Path.GetFileName(file.FileName);
                    CompletedAssignmentFileDetails fileDetail = new CompletedAssignmentFileDetails()
                    {
                        FileName              = fileName,
                        Extension             = Path.GetExtension(fileName),
                        FileId                = Guid.NewGuid(),
                        CompletedAssignmentId = completedAssignment.Id
                    };
                    fileDetails.Add(fileDetail);

                    var path = Path.Combine(Server.MapPath("~/App_Data/Upload/"),
                                            fileDetail.FileId + fileDetail.Extension);
                    file.SaveAs(path);
                }
            }
            completedAssignment.CompletedAssignmentFileDetails = fileDetails;
            _context.CompletedAssignments.AddOrUpdate(completedAssignment);
            _context.SaveChanges();
            new JsonResult {
                Data = "Successfully "
            };
            return(RedirectToAction("ClassroomTasks", new { id = classroom.VirtualClassroom.Id }));
        }