Пример #1
0
def get_principal(request):
    controller = ParentController()
    try:
        user = eval(request.session.get('user'))
        service = PrincipalService()
        #print(user, "User Email: ", user.get("mail"))
        result = service.get_principal(email=user.get('mail'))

    except Exception as e:
        result = controller.handleException(e)

    return HttpResponse(json_encode(result), content_type="application/json")
Пример #2
0
def list_components(request):
    # TO-DO check if this user has a valid session
    controller = BillController()

    try:
        service = ComposantService()

        result = service.list(request.POST)

    except Exception as e:
        result = controller.handleException(e)

    return HttpResponse(json_encode(result), content_type="application/json")
Пример #3
0
def list_reports(request):
    # TO-DO check if this user has a valid session
    controller = ParentController()

    try:
        service = ReportService

        result = service.list(request.POST)

    except Exception as e:
        print(e)
        result = controller.handleException(e)

    return HttpResponse(json_encode(result), content_type="application/json")
def userLoggedOn(request):
    #TO-DO check if this user has a valid session
    controller = SystemUserController()

    try:
        service = SystemUserService()

        user = service.userLoggedOn(request.session, request.POST)
        result = {'success': True, 'data' : user}
    except Exception as e:
        result = controller.handleException(e)

    return HttpResponse(json_encode(result),
                       content_type="application/json")
def list_principals(request):
    # TO-DO check if this user has a valid session
    controller = SystemUserController()

    try:
        service = PrincipalService()

        result = service.list(request.POST)

    except Exception as e:
        result = controller.handleException(e)

    return HttpResponse(json_encode(result),
                        content_type="application/json")
def savePrincipal(request):
    # TO-DO check if this user has a valid session
    controller = SystemUserController()

    try:
        service = PrincipalService()
        service.save_principal(request.POST)
        result = {'success': True, 'message': 'Principal details successfully saved. You can now view it.'}

    except Exception as e:
        result = controller.handleException(e)

    return HttpResponse(json_encode(result),
                        content_type="application/json")
Пример #7
0
def user_logout(request):

    if request.session.get('user', 0):
        del request.session['user']

        audit = LoginAudit.objects.get(
            pk=request.session.get('login_audit_id'))
        audit.logout_date = datetime.now()
        audit.save()
        resultmessage = 'You have successfully logged out.'
        return HttpResponse(json_encode({
            'success': True,
            'message': resultmessage,
            'data': {}
        }),
                            content_type="application/json")

    return HttpResponse(json_encode({
        'success': False,
        'message': "Logout failed, try again.",
        'data': {}
    }),
                        content_type="application/json")
Пример #8
0
def listExport(request):
    # TO-DO check if this user has a valid session
    controller = ParentController()

    try:
        service = ReportService

        headers, records = service.listExport(request.GET)

        return ExportUtil.export(headers, records, request.GET['exportType'])

    except Exception as e:
        result = controller.handleException(e)

    return HttpResponse(json_encode(result), content_type="application/json")
def saveUser(request):
    #TO-DO check if this user has a valid session
    controller = SystemUserController()

    try:
        service = SystemUserService()

        service.save(request.POST)
            
        result = {'success': True, 'message' : 'User details successfully updated. You can now login into the platform.'}

    except Exception as e:
        result = controller.handleException(e)

    return HttpResponse(json_encode(result),
                       content_type="application/json")
def passwordChange(request):
    #TO-DO check if this user has a valid session
    controller = SystemUserController()

    try:
        service = SystemUserService()

        service.passwordChange(request.POST)
            
        result = {'success': True, 'message' : 'You have changed your password successfully.'}

    except Exception as e:
        result = controller.handleException(e)

    return HttpResponse(json_encode(result),
                       content_type="application/json")
def passwordForget(request):
    #TO-DO check if this user has a valid session
    controller = SystemUserController()

    try:
        service = SystemUserService()

        service.passwordForget(request.POST)
            
        result = {'success': True, 'message' : 'The password reset instructions have been sent to your email address.'}

    except Exception as e:
        result = controller.handleException(e)

    return HttpResponse(json_encode(result),
                       content_type="application/json")
Пример #12
0
def saveRepas(request):
    # TO-DO check if this user has a valid session
    controller = BillController()

    try:
        service = RepasService()
        service.register_repas(request.POST)
        result = {
            'success': True,
            'message': 'Repas details successfully saved. You can now view it.'
        }

    except Exception as e:
        result = controller.handleException(e)

    return HttpResponse(json_encode(result), content_type="application/json")
Пример #13
0
def saveDailyChildReport(request):
    # TO-DO check if this user has a valid session
    controller = ParentController()

    try:
        service = ReportService()

        service.save_parent_child(request.POST)

        result = {
            'success':
            True,
            'message':
            'Parent and Child details successfully saved. You can now view it.'
        }

    except Exception as e:
        result = controller.handleException(e)

    return HttpResponse(json_encode(result), content_type="application/json")
Пример #14
0
def authenticate(request):
    controller = LoginController()

    auth = False
    resultmessage = ''
    data = {}
    print("REQUEST DATA : \n", request, "\n")
    if request.POST:
        # get the user name and the pwd for the authentication operation
        email = request.POST.get('user', '')
        password = request.POST.get('pass', '')

        if (email and password):
            #get model and check for this user
            try:

                user = None

                try:
                    user = WebUsers.objects.get(
                        name=email)  #get the account using the username
                except WebUsers.DoesNotExist:
                    #no user with such username, now lets try the email
                    users = WebUsers.objects.filter(
                        mail=email)  #get the account using the email
                    if users:
                        user = users[0]
                    else:
                        raise WebUsers.DoesNotExist

                d = PasswordHasher()

                if not d.user_check_password(password, user):
                    raise WebUsers.DoesNotExist

                #now check if they are allowed to use admin
                user_detail = WebUserDetail.objects.get(user_id=user.uid)
                if 0 == user_detail.can_use_admin and UserModule.objects.filter(
                        system_user=user).count() <= 0:
                    resultmessage = 'Sorry, your profile does not have the appropriate privileges to use admin.'
                #check the status of the user
                else:
                    if not user.status:
                        resultmessage = 'Your account has been deactivated. Please contact the adminstrator to get your account reactivated.'
                    else:
                        #after successfully loggin in, go ahead to audit this
                        client_ip = request.META.get(
                            'HTTP_X_FORWARDED_FOR',
                            '') or request.META.get('REMOTE_ADDR')
                        audit = LoginAudit(created_by_id=user.uid,
                                           date_created=datetime.now(),
                                           ip_address=client_ip)
                        audit.save()

                        request.session['login_audit_id'] = audit.id
                        request.session['user'] = json_encode(user)
                        request.session['user_detail'] = json_encode(
                            user_detail.user_id)
                        request.session['full_name'] = user_detail.full_name
                        #data.update({'user': request.session['user']})
                        data.update(
                            {'user_detail': request.session['user_detail']})

                        #parameters for json response
                        resultmessage = 'Login successfull.'
                        auth = True
                        #decode which modules this user is allowed to view
                        cursor = connection.cursor()

                        cursor.execute(
                            "SELECT module_id FROM user_module_perm WHERE system_user_id = "
                            + str(user.uid))
                        modules = cursor.fetchall()

                        allowed_modules = []
                        for module_id in modules:
                            module = Module.objects.get(id=module_id[0])

                            allowed_modules.append(
                                json_encode({
                                    "text": module.display_name,
                                    "handler": module.handler,
                                    "icon": module.icon_file,
                                    "desc": module.description,
                                }))

                        request.session['allowed_modules'] = allowed_modules

            except WebUsers.DoesNotExist:
                #print connection.queries
                #no user with such credentials
                resultmessage = 'The username and password combination you entered is invalid.'
            except Exception as e:
                jsonObj = controller.handleException(e)
                resultmessage = jsonObj['message']
        else:
            resultmessage = 'Username and password are required.'
    print("Data: ", data, "\nSuccess: ", auth, "\nMessage: ", resultmessage)
    return HttpResponse(json_encode({
        'success': auth,
        'message': resultmessage,
        'data': data
    }),
                        content_type="application/json")