def get_context_data(self, **kwargs):
        context = super(PersonalDetailSelectPreviousAddressView,
                        self).get_context_data(**kwargs)
        app_id = app_id_finder(self.request)
        state = self.request.GET.get('state')
        prev_address_response = NannyGatewayActions().list(
            'previous-address', params={'person_id': app_id})

        if prev_address_response.status_code == 200:
            previous_address = []
            for prev_address in prev_address_response.record:
                if prev_address.get('street_line1') != '':
                    prev_address['moved_in_date'] = datetime.datetime.strptime(
                        prev_address['moved_in_date'], '%Y-%m-%d').date()
                    prev_address[
                        'moved_out_date'] = datetime.datetime.strptime(
                            prev_address['moved_out_date'], '%Y-%m-%d').date()
                    previous_address.append(prev_address)
            context['previous_addresses'] = previous_address

        app_id = app_id_finder(self.request)
        context['id'] = app_id
        application_record = NannyGatewayActions().read('application',
                                                        params={
                                                            'application_id':
                                                            app_id
                                                        }).record
        context['personal_details_status'] = application_record[
            'personal_details_status']
        postcode = context['form'].initial['postcode']
        context['postcode'] = postcode
        context['hide_form'] = state == 'hidden'
        return context
Exemplo n.º 2
0
    def form_valid(self, form):
        application_id = self.request.GET['id']
        nanny_api_response = NannyGatewayActions().read(
            'childcare-training', params={'application_id': application_id})

        if nanny_api_response.status_code == 404:
            nanny_api_response = self.create_childcare_training_record()

        record = nanny_api_response.record
        childcare_training = form.cleaned_data['childcare_training']

        for option, option_text in TypeOfChildcareTrainingForm.options:
            if option in childcare_training:
                record[option] = True
            else:
                record[option] = False

        put_response = NannyGatewayActions().put('childcare-training',
                                                 params=record)

        if record[
                'no_training']:  # If they have selected only 'No training' (wouldn't pass validation otherwise)
            self.success_url = 'Childcare-Training-Course'

        if put_response.status_code == 200:
            return super(TypeOfChildcareTrainingFormView,
                         self).form_valid(form)
        else:
            if settings.DEBUG:
                raise RuntimeError(
                    'The Nanny-Gateway API did not update the record as expected.'
                )
            else:
                HttpResponseRedirect(reverse('Service-Unavailable'))
    def form_valid(self, form):
        app_id = app_id_finder(self.request)
        api_response = NannyGatewayActions().list('previous-address',
                                                  params={
                                                      'person_id': app_id,
                                                      'order': '0'
                                                  })

        if api_response.status_code == 200:
            record = api_response.record[0]
            NannyGatewayActions().delete('previous-address',
                                         params={
                                             'previous_address_id':
                                             record['previous_address_id']
                                         })  # Update entire record.
        else:
            record = {}
        record['person_id'] = app_id
        record['street_line1'] = form.cleaned_data['street_line1']
        record['street_line2'] = form.cleaned_data['street_line2']
        record['town'] = form.cleaned_data['town']
        record['postcode'] = form.cleaned_data['postcode']
        record['county'] = form.cleaned_data.get('county')
        record['country'] = form.cleaned_data.get('country', 'United Kingdom')
        record['moved_in_date'] = form.cleaned_data['moved_in_date']
        record['moved_out_date'] = form.cleaned_data['moved_out_date']
        all_addresses_response = NannyGatewayActions().list(
            'previous-address', params={'person_id': app_id})
        if all_addresses_response.status_code == 200:
            record['order'] = len(all_addresses_response.record) + 1
        else:
            record['order'] = 1
        NannyGatewayActions().create('previous-address', params=record)
        return super().form_valid(form)
    def form_valid(self, form):
        application_id = self.request.GET['id']
        record = IdentityGatewayActions().read('user',
                                               params={
                                                   'application_id':
                                                   application_id
                                               }).record
        record['sms_resend_attempts'] = 0
        record['email_expiry_date'] = 0
        IdentityGatewayActions().put('user', params=record)
        response = login_redirect_helper.redirect_by_status(
            record['application_id'])
        CustomAuthenticationHandler.create_session(response,
                                                   {'email': record['email']})

        # Update last accessed time when successfully signed in
        nanny_actions = NannyGatewayActions()
        app_response = nanny_actions.read(
            'application', params={'application_id': application_id})
        if app_response.status_code == 200 and hasattr(app_response, 'record'):
            # application might not exist yet, if user signed out before completing contact details task
            application = app_response.record
            application['date_last_accessed'] = datetime.datetime.now()
            application['application_expiry_email_sent'] = False
            nanny_actions.put('application', application)

        return response
Exemplo n.º 5
0
    def form_valid(self, formset):

        application_id = app_id_finder(self.request)

        if not formset.is_valid():
            # If invalid, render same page with errors and stop
            context = self.get_context_data()

            context["formset"] = formset

            return render(self.request, self.template_name, context)

        self._save_and_replace_previous_names(application_id, formset)

        if self.request.POST["action"] == "Add another name":

            return self._previous_names_page_redirect(application_id,
                                                      show_extra=True)

        application_record = (NannyGatewayActions().read("application",
                                                         params={
                                                             "application_id":
                                                             application_id
                                                         }).record)
        if (application_record["personal_details_status"] != "COMPLETED"
                or application_record["personal_details_status"] != "FLAGGED"):
            application_record["personal_details_status"] = "IN_PROGRESS"
        NannyGatewayActions().put("application", params=application_record)

        return super().form_valid(formset)
Exemplo n.º 6
0
    def _save_and_replace_previous_names(self, app_id, formset):

        previous_names = NannyGatewayActions().list(
            "previous-name", params={"application_id": app_id})
        previous_names.record.sort(key=sort_func)

        if previous_names.status_code == 200:
            for j in range(1, len(previous_names.record)):
                NannyGatewayActions().delete(
                    "previous-name",
                    params={
                        "previous_name_id":
                        previous_names.record[j]["previous_name_id"]
                    },
                )

        for i, form in enumerate(formset):

            NannyGatewayActions().create(
                "previous-name",
                params={
                    "application_id": app_id,
                    "first_name": form.cleaned_data["first_name"],
                    "middle_names": form.cleaned_data["middle_names"],
                    "last_name": form.cleaned_data["last_name"],
                    "start_day": form.cleaned_data["start_date"].day,
                    "start_month": form.cleaned_data["start_date"].month,
                    "start_year": form.cleaned_data["start_date"].year,
                    "end_day": form.cleaned_data["end_date"].day,
                    "end_month": form.cleaned_data["end_date"].month,
                    "end_year": form.cleaned_data["end_date"].year,
                    "order": i + 1,
                },
            )
 def post(self, request):
     app_id = request.GET['id']
     api_response = NannyGatewayActions().read(
         'application', params={'application_id': app_id})
     api_response.record['childcare_address_status'] = 'COMPLETED'
     NannyGatewayActions().put('application', params=api_response.record)
     return HttpResponseRedirect(build_url('Task-List', get={'id': app_id}))
Exemplo n.º 8
0
    def get_success_url(self):

        application_id = app_id_finder(self.request)

        if self.request.POST["name_history"] == "True":
            success_url = "personal-details:Personal-Details-Birth-Name"
        elif self.request.POST["name_history"] == "False":
            response = NannyGatewayActions().list(
                "previous-name", params={"application_id": application_id}
            )
            if response.status_code == 200:
                for prev_name in response.record:
                    NannyGatewayActions().delete(
                        "previous-name",
                        params={"previous_name_id": prev_name["previous_name_id"]},
                    )
            success_url = "personal-details:Personal-Details-Home-Address"
        else:
            raise ValueError(
                "Invalid response passed to the name_history view from the Name history question in Nanny"
            )

        url = build_url(success_url, get=self.get_success_parameters())

        return url
    def form_valid(self, form):
        application_id = app_id_finder(self.request)
        application_record = NannyGatewayActions().read('application',
                                                        params={
                                                            'application_id':
                                                            application_id
                                                        }).record
        if application_record[
                'suitability_details_status'] != 'COMPLETED' or application_record[
                    'suitability_details_status'] != 'FLAGGED':
            application_record['suitability_details_status'] = 'IN_PROGRESS'
        NannyGatewayActions().put('application', params=application_record)

        data_dict = {
            'application_id':
            application_id,
            'suitability_circumstances_details':
            form.cleaned_data["suitability_circumstances_details"],
        }
        existing_record = NannyGatewayActions().read(
            'suitability', params={'application_id': application_id})
        if existing_record.status_code == 200:
            NannyGatewayActions().patch('suitability', params=data_dict)
        elif existing_record.status_code == 404:
            NannyGatewayActions().create('suitability', params=data_dict)
        return super().form_valid(form)
    def get_initial(self):
        initial = super().get_initial()
        app_id = app_id_finder(self.request)
        initial['id'] = app_id
        previous_address_id = self.request.GET.get('address_id')

        api_response = NannyGatewayActions().read(
            'previous-address',
            params={'previous_address_id': previous_address_id})
        crc_api_response = NannyGatewayActions().read(
            "dbs-check", params={'application_id': app_id})
        if crc_api_response.status_code == 200:
            initial['lived_abroad'] = crc_api_response.record['lived_abroad']
        if api_response.status_code == 200:
            initial['street_line1'] = api_response.record['street_line1']
            initial['street_line2'] = api_response.record['street_line2']
            initial['town'] = api_response.record['town']
            initial['county'] = api_response.record['county']
            initial['country'] = api_response.record['country']
            initial['postcode'] = api_response.record['postcode']
            initial['moved_in_date'] = datetime.datetime.strptime(
                api_response.record['moved_in_date'], '%Y-%m-%d').date()
            initial['moved_out_date'] = datetime.datetime.strptime(
                api_response.record['moved_out_date'], '%Y-%m-%d').date()

        return initial
    def form_valid(self, form):
        app_id = app_id_finder(self.request)
        previous_address_id = self.request.POST.get('address_id')
        api_response = NannyGatewayActions().read(
            'previous-address',
            params={'previous_address_id': previous_address_id})
        street_line1 = form.cleaned_data['street_line1']
        street_line2 = form.cleaned_data['street_line2']
        town = form.cleaned_data['town']
        county = form.cleaned_data['county']
        country = form.cleaned_data.get('country', None)
        postcode = form.cleaned_data['postcode']
        moved_in_date = form.cleaned_data['moved_in_date']
        moved_out_date = form.cleaned_data['moved_out_date']

        # update the address record if it already existed
        if api_response.status_code == 200:
            record = api_response.record
            record['street_line1'] = street_line1
            record['street_line2'] = street_line2
            record['town'] = town
            record['county'] = county
            record['country'] = country
            record['postcode'] = postcode
            record['moved_in_date'] = moved_in_date
            record['moved_out_date'] = moved_out_date
            NannyGatewayActions().put('previous-address', params=record)

        return super().form_valid(form)
    def form_valid(self, form):

        application_id = app_id_finder(self.request)
        application_record = NannyGatewayActions().read('application',
                                                        params={
                                                            'application_id':
                                                            application_id
                                                        }).record
        application_record['first_aid_status'] = 'IN_PROGRESS'
        NannyGatewayActions().put('application', params=application_record)

        data_dict = {
            'application_id':
            application_id,
            'training_organisation':
            escape(form.cleaned_data['training_organisation']),
            'course_title':
            escape(form.cleaned_data['course_title']),
            'course_date':
            form.cleaned_data['course_date'],
        }

        existing_record = NannyGatewayActions().read(
            'first-aid', params={'application_id': application_id})
        if existing_record.status_code == 200:
            NannyGatewayActions().patch('first-aid', params=data_dict)
        elif existing_record.status_code == 404:
            NannyGatewayActions().create('first-aid', params=data_dict)

        if self.__first_aid_renew(form):
            self.success_url = "first-aid:First-Aid-Renew"
        else:
            self.success_url = "first-aid:First-Aid-Declaration"

        return super().form_valid(form)
Exemplo n.º 13
0
    def get_success_url(self):
        application_id = app_id_finder(self.request)

        existing_name_records = NannyGatewayActions().list(
            "previous-name", params={"application_id": application_id})
        names = existing_name_records.record
        names.sort(key=sort_func)
        previous_names = names[1:]
        previous_name_ids = []
        for prev_name in previous_names:
            prev_name_id = prev_name["previous_name_id"]
            previous_name_ids.append(prev_name_id)

        if self.request.POST["previous_name"] == "True":
            success_url = "personal-details:Personal-Details-Previous-Names"
        elif self.request.POST["previous_name"] == "False":
            for i in previous_name_ids:
                NannyGatewayActions().delete("previous-name",
                                             params={"previous_name_id": i})
            success_url = "personal-details:Personal-Details-Name-history-summary"
        else:
            raise ValueError(
                "Invalid response passed to the name_history view from the Name history question in Nanny"
            )

        url = build_url(success_url, get=self.get_success_parameters())

        return url
    def get_success_url(self):
        application_id = app_id_finder(self.request)

        if self.request.POST["gaps_in_five_year_address_history"] == "True":
            self.success_url = "personal-details:Personal-Details-Address-Gap-Entry"
        else:
            response = NannyGatewayActions().list(
                "missing-address-gap", params={"application_id": application_id}
            )
            if response.status_code == 200:
                for gap in response.record:
                    NannyGatewayActions().delete(
                        "missing-address-gap",
                        params={
                            "missing_address_gap_id": gap["missing_address_gap_id"]
                        },
                    )
            self.success_url = (
                "personal-details:Personal-Details-Previous-Address-Summary"
            )

        url = super(
            PersonalDetailGapsInFiveYearAddressHistoryView, self
        ).get_success_url()

        return url
Exemplo n.º 15
0
    def form_valid(self, form):
        application_id = app_id_finder(self.request)
        application_record = NannyGatewayActions().read("application",
                                                        params={
                                                            "application_id":
                                                            application_id
                                                        }).record
        if application_record["suitability_details_status"] not in (
                "COMPLETED", "FLAGGED"):
            application_record["suitability_details_status"] = "IN_PROGRESS"
        NannyGatewayActions().put("application", params=application_record)

        data_dict = {
            "application_id":
            application_id,
            "disqualification_details":
            form.cleaned_data["disqualification_details"],
        }
        existing_record = NannyGatewayActions().read(
            "suitability", params={"application_id": application_id})
        if existing_record.status_code == 200:
            NannyGatewayActions().patch("suitability", params=data_dict)
        elif existing_record.status_code == 404:
            NannyGatewayActions().create("suitability", params=data_dict)
        return super().form_valid(form)
Exemplo n.º 16
0
 def if_name(self, application_id, field, enabled, pk=None):
     """
     This checks if a name has been flagged, as first, middle or last cannot be flagged individually.
     It will be called on every field during the call to check_flags and remove_flags.
     :param field: The name of the field with which to query the database.
     :param enabled: Specify if you are setting the 'flagged' column to True or False.
     :return: None
     """
     if field in ("first_name", "middle_names", "last_name"):
         query_params = {
             "application_id": application_id,
             "field_name": "name",
             "table_pk": self.get_pk(pk),
         }
         arc_comments_filter = NannyGatewayActions().list(
             "arc-comments", params=query_params)
         if arc_comments_filter.status_code == 200 and bool(
                 arc_comments_filter.record[0]["flagged"]):
             if enabled and field == "first_name":
                 comment = arc_comments_filter.record[0]["comment"]
                 self.cleaned_data = ""
                 self.add_error(field, forms.ValidationError(comment))
             elif enabled and field != "first_name":
                 self.add_error(field, forms.ValidationError(""))
             else:
                 arc_record = arc_comments_filter.record[0]
                 arc_record["flagged"] = False
                 NannyGatewayActions().put("arc-comments",
                                           params=arc_record)
Exemplo n.º 17
0
def _get_current_adress_info(context, application_id):
    home_address_response = NannyGatewayActions().read(
        "applicant-home-address", params={"application_id": application_id}
    )
    if home_address_response.status_code == 200:
        home_address = home_address_response.record

    person_details_response = NannyGatewayActions().read(
        "applicant-personal-details", params={"application_id": application_id}
    )
    if person_details_response.status_code == 200:
        moved_in = person_details_response.record["moved_in_date"]

    dbs_response = NannyGatewayActions().read(
        "dbs-check", params={"application_id": application_id}
    )
    if dbs_response.status_code == 200:
        lived_abroad = dbs_response.record["lived_abroad"]

    context["current_address"] = _get_full_address(home_address)
    context["current_address_moved_in"] = datetime.datetime.strptime(
        moved_in, "%Y-%m-%d"
    )
    context["lived_abroad"] = lived_abroad

    return context
    def post(self, request, *args, **kwargs):
        application_id = self.request.POST.get('id')
        master_summary = self.request.POST.get('master-summary')
        hide_form = self.request.GET.get('state')

        delete_action = ([
            k for k, v in self.request.POST.items() if k.startswith('remove-')
        ] + [None])[0]
        if delete_action is not None:

            # param name in the form 'remove-[id]'
            delete_id = delete_action[len('remove-'):]

            # id will be blank if user is removing the new, empty form. Can safely ignore
            if delete_id != '':
                response = NannyGatewayActions().delete(
                    'previous-address',
                    params={'previous_address_id': delete_id})
            return HttpResponseRedirect(
                build_url('personal-details:Personal-Details-Previous-Address',
                          get={
                              'id': application_id,
                              'master-summary': master_summary,
                              'state': hide_form
                          }))

        if hide_form == 'hidden':
            api_response = NannyGatewayActions().list('previous-address',
                                                      params={
                                                          'person_id':
                                                          application_id,
                                                          'order': '0'
                                                      })

            if api_response.status_code == 200:
                NannyGatewayActions().delete('previous-address',
                                             params=api_response.record[0])
            return HttpResponseRedirect(
                build_url(
                    'personal-details:Personal-Details-Gaps-In-Address-History',
                    get={
                        'id': request.POST['id'],
                        'summary': master_summary
                    }))
        if 'delete-active' in request.POST:
            return HttpResponseRedirect(
                build_url('personal-details:Personal-Details-Previous-Address',
                          get={
                              'id': request.POST['id'],
                              'state': 'hidden',
                              'summary': master_summary
                          }))

        form = self.get_form()
        if form.is_valid():
            return self.form_valid(form)
        else:
            return self.form_invalid(form)
Exemplo n.º 19
0
def _get_previous_gaps_and_adresses_info(application_id):
    previous_adresses_and_gaps = []

    previous_adresses_response = NannyGatewayActions().list(
        "previous-address", params={"person_id": application_id}
    )
    previous_adresses = None
    if previous_adresses_response.status_code == 200:
        previous_adresses = previous_adresses_response.record

    if previous_adresses:
        for index, address in enumerate(previous_adresses):
            temp_address = dict()
            temp_address["type"] = "adress"
            temp_address["index"] = index + 1
            temp_address["description"] = _get_full_address(address)
            temp_address["start_date"] = datetime.datetime.strptime(
                address["moved_in_date"], "%Y-%m-%d"
            )
            temp_address["end_date"] = datetime.datetime.strptime(
                address["moved_out_date"], "%Y-%m-%d"
            )
            temp_address['id'] = address["previous_address_id"]
            previous_adresses_and_gaps.append(temp_address)

    previous_gaps_response = NannyGatewayActions().list(
        "missing-address-gap", params={"application_id": application_id}
    )
    previous_gaps = None
    if previous_gaps_response.status_code == 200:
        previous_gaps = previous_gaps_response.record

    if previous_gaps:
        for index, gap in enumerate(previous_gaps):
            temp_gap = dict()
            temp_gap["type"] = "gap"
            temp_gap["index"] = index + 1
            temp_gap["description"] = gap["gap_reason"]
            temp_gap["start_date"] = datetime.datetime.strptime(
                _convert_to_full_date(
                    gap["moved_in_day"],
                    gap["moved_in_month"],
                    gap["moved_in_year"],
                ),
                "%Y-%m-%d",
            )
            temp_gap["end_date"] = datetime.datetime.strptime(
                _convert_to_full_date(
                    gap["moved_out_day"],
                    gap["moved_out_month"],
                    gap["moved_out_year"],
                ),
                "%Y-%m-%d",
            )
            temp_gap['id'] = gap["missing_address_gap_id"]
            previous_adresses_and_gaps.append(temp_gap)

    return previous_adresses_and_gaps
Exemplo n.º 20
0
    def form_valid(self, form):
        app_id = app_id_finder(self.request)
        api_response = NannyGatewayActions().read('applicant-home-address', params={'application_id': app_id})
        street_line1 = form.cleaned_data['street_line1']
        street_line2 = form.cleaned_data['street_line2']
        town = form.cleaned_data['town']
        county = form.cleaned_data['county']
        postcode = form.cleaned_data['postcode']
        moved_in_date = form.cleaned_data['moved_in_date']

        if form.cleaned_data['moved_in_date'] <= subtract_years(datetime.today().date(), 5):
            response = NannyGatewayActions().list('previous-address', params={'person_id': app_id})
            if response.status_code == 200:
                for prev_address in response.record:
                    NannyGatewayActions().delete('previous-address',
                                                 params={'previous_address_id': prev_address['previous_address_id']})
            response = NannyGatewayActions().list('missing-address-gap', params={'application_id': app_id})
            if response.status_code == 200:
                for prev_address_gap in response.record:
                    NannyGatewayActions().delete('missing-address-gap',
                                                 params={'missing_address_gap_id': prev_address_gap['missing_address_gap_id']})

        # update the address record if it already existed
        if api_response.status_code == 200:
            record = api_response.record
            record['street_line1'] = street_line1
            record['street_line2'] = street_line2
            record['town'] = town
            record['county'] = county
            record['postcode'] = postcode
            NannyGatewayActions().put('applicant-home-address', params=record)

        # create the address record if it didn't exist
        elif api_response.status_code == 404:
            apd_response = NannyGatewayActions().read('applicant-personal-details', params={'application_id': app_id})
            if apd_response.status_code == 200:
                pd_id = apd_response.record['personal_detail_id']
                NannyGatewayActions().create(
                    'applicant-home-address',
                    params={
                        'application_id': app_id,
                        'personal_detail_id': pd_id,
                        'street_line1': street_line1,
                        'street_line2': street_line2,
                        'town': town,
                        'county': county,
                        'postcode': postcode,
                    }
                )

        pd_api_response = NannyGatewayActions().read('applicant-personal-details', params={'application_id': app_id})
        if pd_api_response.status_code == 200:
            record = pd_api_response.record
            record['moved_in_date'] = str(moved_in_date)
            NannyGatewayActions().put('applicant-personal-details', params=record)

        return super().form_valid(form)
Exemplo n.º 21
0
    def form_valid(self, form):
        application_id = self.request.GET['id']

        criminal_checks_record = NannyGatewayActions().read('dbs-check', params={'application_id': application_id}).record
        criminal_checks_record['dbs_number'] = form.cleaned_data['dbs_number']

        NannyGatewayActions().put('dbs-check', params=criminal_checks_record)

        return super(NonCapitaDBSDetailsFormView, self).form_valid(form)
Exemplo n.º 22
0
 def get_context_data(self, **kwargs):
     context = super().get_context_data()
     app_id = app_id_finder(self.request)
     api_response = NannyGatewayActions().read('applicant-home-address', params={'application_id': app_id})
     if api_response.status_code == 200:
         context['address'] = AddressHelper.format_address(api_response.record, ", ")
     context['id'] = app_id
     application_record = NannyGatewayActions().read('application', params={'application_id': app_id}).record
     context['personal_details_status'] = application_record['personal_details_status']
     return context
 def post(self, request):
     application_id = request.GET['id']
     record = NannyGatewayActions().read('application',
                                         params={
                                             'application_id':
                                             application_id
                                         }).record
     record['childcare_training_status'] = 'COMPLETED'
     NannyGatewayActions().put('application', params=record)
     return HttpResponseRedirect(
         reverse('Task-List') + '?id=' + application_id)
Exemplo n.º 24
0
 def post(self, request):
     application_id = request.GET['id']
     record = NannyGatewayActions().read('application',
                                         params={
                                             'application_id':
                                             application_id
                                         }).record
     record['childcare_training_status'] = 'IN_PROGRESS'
     NannyGatewayActions().put('application', params=record)
     return HttpResponseRedirect(
         reverse('Childcare-Training-Summary') + '?id=' + application_id)
    def post(self, request):
        app_id = app_id_finder(self.request)
        # update task status to be done
        app_api_response = NannyGatewayActions().read(
            'application', params={'application_id': app_id})
        if app_api_response.status_code == 200:
            record = app_api_response.record
            record['insurance_cover_status'] = 'COMPLETED'
            NannyGatewayActions().put('application', params=record)

        return HttpResponseRedirect(build_url('Task-List', get={'id': app_id}))
    def form_valid(self, form):
        api_response = NannyGatewayActions().read(
            'dbs-check', params={'application_id': self.request.GET['id']})

        criminal_checks_record = api_response.record
        criminal_checks_record['on_dbs_update_service'] = self.request.POST[
            'on_dbs_update_service']

        NannyGatewayActions().put('dbs-check', params=criminal_checks_record)

        return super(DBSUpdateServiceFormView, self).form_valid(form)
 def post(self, request):
     application_id = self.request.POST['id']
     application_record = NannyGatewayActions().read('application',
                                                     params={
                                                         'application_id':
                                                         application_id
                                                     }).record
     application_record['first_aid_status'] = 'COMPLETED'
     NannyGatewayActions().put('application', params=application_record)
     return HttpResponseRedirect(
         build_url(self.success_url_name, get={'id': application_id}))
Exemplo n.º 28
0
    def form_valid(self, form):
        # pull the applicant's home address from their personal details
        app_id = self.request.GET['id']

        both_work_and_home_address = None
        if form.cleaned_data['both_work_and_home_address'] == 'True':
            both_work_and_home_address = True
            self.success_url = 'Childcare-Address-Details'
        elif form.cleaned_data['both_work_and_home_address'] == 'False':
            both_work_and_home_address = False
            self.success_url = 'Childcare-Address-Postcode-Entry'

        childcare_address_changed_to_false = self.__check_childcare_address_changed_to_false(app_id,
                                                                                             both_work_and_home_address)

        apd_api_response = NannyGatewayActions().read('applicant-personal-details', params={'application_id': app_id})

        if apd_api_response.status_code == 200:
            personal_detail_id = apd_api_response.record['personal_detail_id']
            aha_api_response = NannyGatewayActions().read('applicant-home-address', params={'application_id': app_id})

            if aha_api_response.status_code == 200:
                home_address_record = aha_api_response.record
                initial_both_work_and_home_address = home_address_record['childcare_address']
                home_address_record['childcare_address'] = both_work_and_home_address
                NannyGatewayActions().put('applicant-home-address', params=home_address_record)



                # add new childcare address
                if both_work_and_home_address and not initial_both_work_and_home_address:
                    NannyGatewayActions().create(
                        'childcare-address',
                        params={
                            'date_created': datetime.today(),
                            'application_id': app_id,
                            'street_line1': home_address_record['street_line1'],
                            'street_line2': home_address_record['street_line2'],
                            'town': home_address_record['town'],
                            'county': home_address_record['county'],
                            'country': home_address_record['country'],
                            'postcode': home_address_record['postcode'],
                            'home_address': True
                        }
                    )

        if childcare_address_changed_to_false:
            # Delete all childcare addresses that are the same as the Applicant's home address.
            self.__delete_home_childcare_addresses(app_id)
            redirect_url = build_url('Childcare-Address-Postcode-Entry', get={'id': app_id, 'add': '1'})
            return HttpResponseRedirect(redirect_url)

        return super(ChildcareLocationView, self).form_valid(form)
Exemplo n.º 29
0
    def post(self, request):
        application_id = app_id_finder(request)
        application_record = (NannyGatewayActions().read("application",
                                                         params={
                                                             "application_id":
                                                             application_id
                                                         }).record)
        application_record["personal_details_status"] = "COMPLETED"
        NannyGatewayActions().put("application", params=application_record)

        return HttpResponseRedirect(
            build_url(self.success_url_name, get={"id": application_id}))
 def post(self, request):
     app_id = request.POST['id']
     # update the task status to be done
     api_response = NannyGatewayActions().read(
         'application',
         params={
             'application_id': app_id
         }
     )
     api_response.record['childcare_address_status'] = 'COMPLETED'
     NannyGatewayActions().put('application', params=api_response.record)
     return HttpResponseRedirect(reverse('Task-List') + "?id=" + app_id)