Beispiel #1
0
        private void ChangeUserSubAreas(int userId, List <string> newSubAreas, bool changedName)
        {
            List <SubArea> UserSubAreas = subAreaController.GetUserSubAreas(userId);

            if (changedName)
            {
                ResetSubAreasProxy(UserSubAreas);
            }
            List <string> oldSubAreas      = SubAreaUtils.GetSubAreasStrings(UserSubAreas).ToList();
            List <string> subAreasToAssign = SubAreaUtils.OneWayCompareSubAreas(newSubAreas, oldSubAreas);
            List <string> subAreasToDelete = SubAreaUtils.OneWayCompareSubAreas(oldSubAreas, newSubAreas);

            SubAreaAssignUtils.AssignSubAreasToUser(userId, subAreaController, subAreasToAssign.ToArray());
            SubAreaAssignUtils.UnAssignSubAreasToUser(userId, subAreaController, subAreasToDelete.ToArray());
        }
Beispiel #2
0
        public void DeleteStudent(int userId)
        {
            List <SubArea> userSubAreas = subAreaController.GetUserSubAreas(userId);

            ResetSubAreasProxy(userSubAreas);
            List <string> assignmentsToDelete = SubAreaUtils.GetSubAreasStrings(userSubAreas).ToList();

            SubAreaAssignUtils.UnAssignSubAreasToUser(userId, subAreaController, assignmentsToDelete.ToArray());
            StudentExamController         studentExamController         = new StudentExamController();
            StudentExamQuestionController studentExamQuestionController = new StudentExamQuestionController();
            List <StudentExam>            allStudentExamIds             = studentExamController.GetAllStudentExams(userId);

            foreach (StudentExam studentExam in allStudentExamIds)
            {
                studentExamQuestionController.DeleteAllStudentExamQuestions(studentExam.Id);
                studentExamController.DeleteStudentExam(studentExam.Id);
            }
            userController.DeleteStudent(userId);
        }