Пример #1
0
def __edit_if_post_method(request, admin_id, context):
    if request.method == 'POST':
        try:
            admin = __edit_admin_attribute_request(request, admin_id)
            service_controller.admin_management_service().edit(admin_id, admin)
            context['saved'] = 'success'
            return admin
        except Exception as e:
            print('This admin was not registered')
            raise e
Пример #2
0
def __create_if_post_method(request, context):
    if request.method == 'POST':
        try:
            admin = __set_admin_attribute_request(request)
            password = admin.password
            confirm_password = admin.confirm_password
            if password == confirm_password:
                service_controller.admin_management_service().register(admin)
                context['saved'] = 'success'
                return admin
            else:
                context['saved'] = 'fail'
        except Exception as e:
            print('This Admin was not registered')
            raise e
Пример #3
0
def edit_admin(request):
    if request.user.is_superuser:
        username = request.user.username
        l_as_list = []
        for g in request.user.groups.all():
            l_as_list.append(g.name)

        try:
            user_id = request.user.id
            admin = service_controller.admin_management_service().details(
                user_id)
            admin_id = admin.id
        except AdminUser.DoesNotExist as e:
            print('You are not registered yet!')
            raise e

        context = {
            'admin': admin,
            'username': username,
            'l_as_list': l_as_list,
        }

        edited_admin = __edit_if_post_method(request, admin_id, context)
        if edited_admin is not None:
            context['admin'] = edited_admin
            return redirect('edit_admin')
        return render(request, 'admin/edit_admin.html', context)
    else:
        context = {'message': 'You are not authorised'}
        return render(request, 'error_message.html', context)
Пример #4
0
def list_admins(request):
    l_as_list = []
    for g in request.user.groups.all():
        l_as_list.append(g.name)

    admins = service_controller.admin_management_service().list()
    context = {
        'admins': admins,
        'l_as_list': l_as_list,
    }
    return render(request, '', context)
Пример #5
0
def admin_dashboard(request):
    if request.user.is_superuser:
        l_as_list = []
        for g in request.user.groups.all():
            l_as_list.append(g.name)
        user_id = request.user.id
        username = request.user.username
        admin = service_controller.admin_management_service().details(user_id)

        context = {
            'admin': admin,
            'username': username,
            'l_as_list': l_as_list,
        }
        return render(request, 'admin/admin_dashboard.html', context)
    else:
        context = {'message': 'You are not authorised!'}
        return render(request, 'error_message.html', context)
Пример #6
0
def list_submissions(request):
    if request.method == "GET":
        if request.user.student_set.exists():
            user_id = request.user.id
            student = service_controller.student_management_service().details(
                user_id=user_id)
            student_id = student.id
            sitting_list: List = service_controller.sitting_management_service(
            ).list_of_sitting_for_student_assessment(student_id)
            serializer = Submissions(sitting_list, many=True)
            json_data = serializer.data
            return Response(json_data)

        elif request.user.tutor_set.exists():
            user_id = request.user.id
            tutor = service_controller.tutor_management_service().details(
                user_id)
            tutor_id = tutor.id
            assessments = service_controller.assessment_management_service(
            ).list_assessment_for_tutor(tutor_id)
            sittings = service_controller.sitting_management_service().list()
            sitting_list: List = []

            for sitting in sittings:
                for assessment in assessments:
                    if assessment.id == sitting.assessment_id:
                        sitting_list.append(sitting)

            serializer = Submissions(sitting_list, many=True)
            json_data = serializer.data
            return Response(json_data)

        elif request.user.adminuser_set.exists():
            user_id = request.user.id
            admin = service_controller.admin_management_service().details(
                user_id=user_id)
            admin_id = admin.id
            sittings = service_controller.sitting_management_service().list()
            serializer = Submissions(sittings, many=True)
            json_data = serializer.data
            return Response(json_data)
Пример #7
0
def admin_details(request):
    if request.user.is_superuser:
        l_as_list = []
        for g in request.user.groups.all():
            l_as_list.append(g.name)
        user_id = request.user.id
        username = request.user.username

        admin = service_controller.admin_management_service().details(user_id)

        tutors = service_controller.tutor_management_service().list()
        tutor_len = len(tutors)

        students = service_controller.student_management_service().list()
        student_len = len(students)

        courses = service_controller.course_management_service().list()
        course_len = len(courses)

        applications = service_controller.apply_management_service().list()
        application_len = len(applications)

        appointments = service_controller.appointment_management_service(
        ).list()
        appointment_len = len(appointments)

        assessments = service_controller.assessment_management_service().list()
        assessment_len = len(assessments)

        enrollments = service_controller.enrollment_management_service().list()
        enrollment_len = len(enrollments)

        questions = service_controller.question_management_service().list()
        question_len = len(questions)

        sittings = service_controller.sitting_management_service().list()
        sitting_len = len(sittings)

        context = {
            'admin': admin,
            'tutors': tutors,
            'students': students,
            'courses': courses,
            'applications': applications,
            'appointments': appointments,
            'assessments': assessments,
            'enrollments': enrollments,
            'questions': questions,
            'sittings': sittings,
            'tutor_len': tutor_len,
            'student_len': student_len,
            'course_len': course_len,
            'appointment_len': appointment_len,
            'application_len': application_len,
            'assessment_len': assessment_len,
            'enrollment_len': enrollment_len,
            'question_len': question_len,
            'sitting_len': sitting_len,
            'username': username,
            'l_as_list': l_as_list,
        }
        return render(request, 'admin/admin_profile.html', context)
    else:
        context = {'message': 'You are not authorised!'}
        return render(request, 'error_message.html', context)