Exemple #1
0
def establishment_state_change_request(request):

    constraint = helpers.constraint(request, "POST");
    data = constraint.strict([
        "establishment_id",
        "state"
    ], True);

    data['state'] = "confirm_" + str(data['state']);

    of_members = building_owner.objects.get(id=data['establishment_id']);
    check_if_valid_action = hasattr(of_members, data['state']);

    if not check_if_valid_action: raise helpers.InvalidRequest("Parameter 'state' not valid action");

    of_method = getattr(of_members, data['state'])();

    of_members.full_clean();
    of_members.clean();
    of_members.save();

    return render(request,"web_manage/load_ajax/establishment_respond_state.html",{
        "data" : of_members
    });

    pass;
Exemple #2
0
def request_temp_log_more_details(request):
    try:
        constraint = helpers.constraint(request, "POST");
        data = constraint.safe({
            "log_id": True,
        });

        of_user = UserProfile.objects.get(user_id=request.user.id);

        of_log = Log.objects.get(
            id=data['log_id'],
            added_by__department_id=of_user.department_id
        );


        return render(request, "ajax_temp/log_details.html", {
            'data': of_log,
            'out': of_log.out(),
            "is_out": of_log.is_out_provided(),
            "LOG" : Log
        });


    except Log.DoesNotExist:
        raise Log.DoesNotExist("Index id of Log object does not exists");

    except UserProfile.DoesNotExist:
        raise UserProfile.DoesNotExist("Index id of UserProfile object does not exists");

    except helpers.InvalidRequest:
        raise helpers.InvalidRequest("Parameters does not supply required fields")
    pass;

    pass;
Exemple #3
0
def database_save_as_out(request):
    try:
        constraint = helpers.constraint(request, "POST");
        data = constraint.safe({
            "log_id": True,
            "receiver_name": False,
            "description": False
        });

        of_user = UserProfile.objects.get(user_id=request.user.id);

        of_log = Log.objects.get(
            id=data['log_id'],
            added_by__department_id=of_user.department_id,
        );

        of_out = Out(
            receiver_name=data['receiver_name'],
            log=of_log,
            description=data['description'],
            added_by=of_user
        );

        of_out.full_clean();
        of_out.clean();
        of_out.save();

        of_log.is_out = True;
        of_log.save();


        return render(request, "ajax_temp/log_details.html", {
            'data': of_log,
            'out': of_log.out(),
            "is_out": of_log.is_out_provided(),
            "LOG" : Log
        });


    except Log.DoesNotExist:
        raise Log.DoesNotExist("Index id of Log object does not exists");

    except UserProfile.DoesNotExist:
        raise UserProfile.DoesNotExist("Index id of UserProfile object does not exists");

    except helpers.InvalidRequest:
        raise helpers.InvalidRequest("Parameters does not supply required fields")
    pass;
Exemple #4
0
def changed_state_members_request(request):

    constraint = helpers.constraint(request, "POST");
    data = constraint.strict([
        "family_members_id",
        "state"
    ], True);

    data['state'] = "confirm_" + str(data['state']);

    of_members = family_members.objects.get(id=data['family_members_id']);
    check_if_valid_action = hasattr(of_members, data['state']);

    if not check_if_valid_action: raise helpers.InvalidRequest("Parameter 'state' not valid action");

    of_method = getattr(of_members, data['state'])();

    of_members.save();

    return render(request,"web_manage/load_ajax/household_respond_state.html",{
        "data" : of_members
    });
Exemple #5
0
def get_tracing_code_info(request):

    try:
        constraint = helpers.constraint(request, "POST");
        data = constraint.safe({
            "tracing_code": True
        });

        of_user_profile = UserProfile.objects.get(id=request.user.id);

        of_log_details = Log_details.objects.get(
            tracing_code=data['tracing_code']
        );

        is_department_log = of_log_details\
                                .added_by\
                                .department_id == of_user_profile.department_id;

        return render(request, "ajax_temp/action_tracking_code_info.html", {
            'log_details': of_log_details,
            'is_department_log' : is_department_log,
            "obj_log" : Log,
            "log_details_person" : of_log_details.person_visitor
        });

    except Log_details.DoesNotExist:
        raise Log.DoesNotExist("Log details id does not exists");

    except UserProfile.DoesNotExist:
        raise UserProfile.DoesNotExist("Index id of UserProfile object does not exists");

    except helpers.InvalidRequest:
        raise helpers.InvalidRequest("Parameters does not supply required fields")
    pass;

    pass;
def r_register_as_building_owner(request):
    try:

        constraint = helpers.constraint(request, "POST")
        data = constraint.strict([
            "establishment_email", "username", "password",
            "establishment_name", "establishment_street", "establishment_purok"
        ], True)
        ''' Begin reCAPTCHA validation '''
        recaptcha_response = request.POST.get('g-recaptcha-response')
        url = 'https://www.google.com/recaptcha/api/siteverify'
        values = {
            'secret': settings.GOOGLE_RECAPTCHA_SECRET_KEY,
            'response': recaptcha_response
        }
        r = requests.post('https://www.google.com/recaptcha/api/siteverify',
                          data=values)
        result = r.json()
        ''' End reCAPTCHA validation '''

        if not result['success']:
            messages.error(request,
                           "Invalid recaptcha",
                           extra_tags="Request not valid")
            raise helpers.InvalidRequest("Household profile invalid params")
            pass

        user = User.objects.create_user(email=data['establishment_email'],
                                        username=data['username'],
                                        password=data['password'],
                                        is_staff=False)

        my_group = Group.objects.get(id=Category.group_building_owner_id)
        my_group.user_set.add(user)

        that_building_owner_data = {
            "user": user.id,
            "establishment_name": data['establishment_name'],
            "purok": data['establishment_purok'],
            "street": data['establishment_street']
        }

        form = BuildingOwnerForm(data=that_building_owner_data,
                                 files=request.FILES)
        validate = form.is_valid()

        if not validate:
            user.delete()
            raise helpers.InvalidRequest("Establishment profile not valid")

        edit = form.save(commit=True)
        edit.save()

        user = auth.authenticate(username=data['username'],
                                 password=data['password'])

        auth.login(request, user)

        return redirect("/home")

    except helpers.InvalidRequest:
        messages.error(
            request, "Please dont leave blanks before submitted"
            " (Palihug ayaw ibilin ang mga blangko sa wala pa isumite)",
            extra_tags="Request not valid")
        return v_register(request)

    except UnboundLocalError as e:

        messages.error(
            request, "Please dont leave blanks before submitted"
            " (Palihug ayaw ibilin ang mga blangko sa wala pa isumite)",
            extra_tags="Request not valid")
        return v_register(request)

        pass

    except Exception as e:
        if user: user.delete()
        raise Exception(e)

    pass

    pass
def r_register_household(request):

    try:
        constraint = helpers.constraint(request, "POST")
        data = constraint.strict([
            "resident_first_name",
            "resident_last_name",
            "phone_number",
            "username",
            "resident_password",
            "resident_date_of_birth",
            "resident_gender",
            "resident_purok",
            "resident_street",
        ], True)
        ''' Begin reCAPTCHA validation '''
        recaptcha_response = request.POST.get('g-recaptcha-response')
        url = 'https://www.google.com/recaptcha/api/siteverify'
        values = {
            'secret': settings.GOOGLE_RECAPTCHA_SECRET_KEY,
            'response': recaptcha_response
        }
        r = requests.post('https://www.google.com/recaptcha/api/siteverify',
                          data=values)
        result = r.json()
        ''' End reCAPTCHA validation '''

        if not result['success']:
            messages.error(request,
                           "Invalid recaptcha",
                           extra_tags="Request not valid")
            raise helpers.InvalidRequest("Household profile invalid params")
            pass

        user = User.objects.create_user(username=data['username'],
                                        password=data['resident_password'],
                                        first_name=data['resident_first_name'],
                                        last_name=data['resident_last_name'],
                                        is_staff=False)

        my_group = Group.objects.get(id=Category.group_citizens_id)
        my_group.user_set.add(user)

        of_purok = Purok.objects.get(id=data['resident_purok'])

        data['phone_number'] = "".join(
            [char for char in data['phone_number'] if char.isalnum()])

        household_form_params = {
            "user": user,
            "phone_number": data['phone_number'],
            "date_of_birth": data['resident_date_of_birth'],
            "gender": data['resident_gender'],
            "purok": of_purok,
            "account_is_verified":
            household_profile.PENDING_VERIFICATION_STATE,
            "street": data['resident_street']
        }

        of_household_profile = HouseholdForm(data=household_form_params,
                                             files=request.FILES)

        validate_household_profile = of_household_profile.is_valid()

        if not validate_household_profile:
            user.delete()
            raise helpers.InvalidRequest("Household profile invalid params")

        edit = of_household_profile.save(commit=True)
        edit.save()

        user = auth.authenticate(username=data['username'],
                                 password=data['resident_password'])

        auth.login(request, user)

        return redirect("/home")

    except helpers.InvalidRequest:
        messages.error(
            request, "Please dont leave blanks before submitted"
            " (Palihug ayaw ibilin ang mga blangko sa wala pa isumite)",
            extra_tags="Request not valid")
        return v_register_household(request)

    except UnboundLocalError as e:

        messages.error(
            request, "Please dont leave blanks before submitted"
            " (Palihug ayaw ibilin ang mga blangko sa wala pa isumite)",
            extra_tags="Request not valid")
        return v_register(request)

        pass

    except Exception as e:
        if user: user.delete()
        raise Exception(e)

    pass