/// <summary> /// Remove a user from a course /// </summary> public bool RemoveUser(string user, int courseID) { //Kill all submissions Submissions subda = new Submissions(m_ident); Components.Submission.SubmissionList subs = new Users(m_ident).GetCourseSubmissions(user, courseID); foreach (Components.Submission sub in subs) { subda.Delete(sub.ID); } return(m_dp.DeleteCourseMember(user, courseID)); }
/// <summary> /// Delete a group ID /// </summary> public bool Delete(int groupID, int asstID) { //Get subs Submissions subda = new Submissions(m_ident); Components.Submission.SubmissionList subs = new Principals(m_ident).GetSubmissions(groupID, asstID); //Take the subs foreach (Components.Submission sub in subs) { subda.Delete(sub.ID); } //Take the group return(m_dp.DeleteGroup(groupID)); }
/// <summary> /// Remove a user from a course /// </summary> public bool RemoveUser(string user, int courseID) { //Kill all submissions Submissions subda = new Submissions(m_ident); Components.Submission.SubmissionList subs = new Users(m_ident).GetCourseSubmissions(user, courseID); foreach (Components.Submission sub in subs) subda.Delete(sub.ID); return m_dp.DeleteCourseMember(user, courseID); }
/// <summary> /// Delete a group ID /// </summary> public bool Delete(int groupID, int asstID) { //Get subs Submissions subda = new Submissions(m_ident); Components.Submission.SubmissionList subs = new Principals(m_ident).GetSubmissions(groupID, asstID); //Take the subs foreach (Components.Submission sub in subs) subda.Delete(sub.ID); //Take the group return m_dp.DeleteGroup(groupID); }
/// <summary> /// Delete the assignment /// </summary> public bool Delete(int asstID) { FileSystem fs = new FileSystem(m_ident); Submissions subda = new Submissions(m_ident); Evaluations evalda = new Evaluations(m_ident); Results resultda = new Results(m_ident); Groups groupda = new Groups(m_ident); AutoJobs jobda = new AutoJobs(m_ident); Assignment asst = GetInfo(asstID); //Check permission Authorize(asst.CourseID, "delete", asstID, null); //Take auto jobs IProviderTransaction tran = m_dp.BeginTransaction(); AutoJob.AutoJobList jobs = GetAutoJobs(asstID, tran); foreach (AutoJob job in jobs) jobda.Finish(job.ID, tran); m_dp.CommitTransaction(tran); //Take submissions and results Components.Submission.SubmissionList allsubs = GetSubmissions(asstID); foreach (Components.Submission sub in allsubs) subda.Delete(sub.ID); //Take rubric Rubric rub = GetRubric(asstID); new Rubrics(m_ident).Delete(rub.ID); //Take evaluations Evaluation.EvaluationList allevals = GetEvals(asstID); foreach (Evaluation eval in allevals) evalda.Delete(eval.ID); //Take groups Group.GroupList groups = GetGroups(asstID); foreach (Group group in groups) groupda.Delete(group.PrincipalID, asstID); //Take assignment m_dp.DeleteAssignment(asstID); //Take content CFile content = fs.GetFile(asst.ContentID); fs.DeleteFile(content); //Log Log("Deleted assignment: " + asst.Description, asst.ID); return true; }
/// <summary> /// Delete the assignment /// </summary> public bool Delete(int asstID) { FileSystem fs = new FileSystem(m_ident); Submissions subda = new Submissions(m_ident); Evaluations evalda = new Evaluations(m_ident); Results resultda = new Results(m_ident); Groups groupda = new Groups(m_ident); AutoJobs jobda = new AutoJobs(m_ident); Assignment asst = GetInfo(asstID); //Check permission Authorize(asst.CourseID, "delete", asstID, null); //Take auto jobs IProviderTransaction tran = m_dp.BeginTransaction(); AutoJob.AutoJobList jobs = GetAutoJobs(asstID, tran); foreach (AutoJob job in jobs) { jobda.Finish(job.ID, tran); } m_dp.CommitTransaction(tran); //Take submissions and results Components.Submission.SubmissionList allsubs = GetSubmissions(asstID); foreach (Components.Submission sub in allsubs) { subda.Delete(sub.ID); } //Take rubric Rubric rub = GetRubric(asstID); new Rubrics(m_ident).Delete(rub.ID); //Take evaluations Evaluation.EvaluationList allevals = GetEvals(asstID); foreach (Evaluation eval in allevals) { evalda.Delete(eval.ID); } //Take groups Group.GroupList groups = GetGroups(asstID); foreach (Group group in groups) { groupda.Delete(group.PrincipalID, asstID); } //Take assignment m_dp.DeleteAssignment(asstID); //Take content CFile content = fs.GetFile(asst.ContentID); fs.DeleteFile(content); //Log Log("Deleted assignment: " + asst.Description, asst.ID); return(true); }