Ejemplo n.º 1
0
    def post(self):
        """process a post request  do a verification or return validation errors"""

        verify_request =  self.get_request()
        message = ""
        if self.result.data == 'accept':

            if self.validate():
                if (self.id_back_photo_invalid.data or
                        self.id_front_photo_invalid.data or
                        self.owner_photo_invalid.data or
                        self.voter_reg_photo_invalid.data):
                    message = alert("One or more of the photos have been "
                                    "marked invalid. Invalid photos are not "
                                    "allowed when accepting an id.", "danger")
                elif not self.state.data:
                    message = alert("State selection is invalid", "danger")
                elif not self.ballot_id.data:
                    message = alert("Ballot ID is invalid", "danger")
                else:
                    response = VerificationResponse(True,
                                                    None,
                                                    verify_request,
                                                    date_str_to_iso(self.id_expiration_date.data),
                                                    True,
                                                    True,
                                                    True,
                                                    True)

                    db.resolve_request(verify_request.id, response)



        else:
            # we are rejecting the data make sure we have a reason or an invalid
            # photo
            if (self.rejection_reason.data or
                    self.id_back_photo_invalid.data or
                    self.id_front_photo_invalid.data or
                    self.owner_photo_invalid.data or
                    self.voter_reg_photo_invalid.data):

                response = VerificationResponse(False,
                                                self.rejection_reason.data,
                                                verify_request,
                                                None,
                                                not self.owner_photo_invalid.data,
                                                not self.voter_reg_photo_invalid.data,
                                                not self.id_front_photo_invalid.data,
                                                not self.id_back_photo_invalid.data)

                db.resolve_request(verify_request.id, response)

            else:
                message = alert("Please enter a rejection reason or select "
                                "an invalid photo", "danger")

        return verify_request, message
Ejemplo n.º 2
0
    def post(self):
        """process a post request  do a verification or return validation errors"""

        verify_request = self.get_request()
        message = ""
        if self.result.data == 'accept':

            if self.validate():
                if (self.id_back_photo_invalid.data
                        or self.id_front_photo_invalid.data
                        or self.owner_photo_invalid.data
                        or self.voter_reg_photo_invalid.data):
                    message = alert(
                        "One or more of the photos have been "
                        "marked invalid. Invalid photos are not "
                        "allowed when accepting an id.", "danger")
                elif not self.state.data:
                    message = alert("State selection is invalid", "danger")
                elif not self.ballot_id.data:
                    message = alert("Ballot ID is invalid", "danger")
                else:
                    response = VerificationResponse(
                        True, None, verify_request,
                        date_str_to_iso(self.id_expiration_date.data), True,
                        True, True, True)

                    db.resolve_request(verify_request.id, response)

        else:
            # we are rejecting the data make sure we have a reason or an invalid
            # photo
            if (self.rejection_reason.data or self.id_back_photo_invalid.data
                    or self.id_front_photo_invalid.data
                    or self.owner_photo_invalid.data
                    or self.voter_reg_photo_invalid.data):

                response = VerificationResponse(
                    False, self.rejection_reason.data, verify_request, None,
                    not self.owner_photo_invalid.data,
                    not self.voter_reg_photo_invalid.data,
                    not self.id_front_photo_invalid.data,
                    not self.id_back_photo_invalid.data)

                db.resolve_request(verify_request.id, response)

            else:
                message = alert(
                    "Please enter a rejection reason or select "
                    "an invalid photo", "danger")

        return verify_request, message
Ejemplo n.º 3
0
    def update_verify_request(self, verify_request):
        """updates a verification request using form data"""
        verify_request.address_1.value = self.address_1.data
        if bool(self.address_2.data):
            verify_request.address_2.value = self.address_2.data

        verify_request.first_name.value = self.first_name.data
        verify_request.middle_name.value = self.middle_name.data
        verify_request.suffix.value = self.suffix.data
        verify_request.last_name.value = self.last_name.data
        verify_request.id_number.value = self.id_number.data

        try:
            if self.birth_date.data:
                verify_request.date_of_birth.value = date_str_to_iso(self.birth_date.data)
        except:
            pass

        verify_request.city.value = self.city.data
        verify_request.state.value = self.state.data
        verify_request.ballot_id.value = self.ballot_id.data
        verify_request.zip.value = self.zip.data
        return verify_request
Ejemplo n.º 4
0
    def update_verify_request(self, verify_request):
        """updates a verification request using form data"""
        verify_request.address_1.value = self.address_1.data
        if bool(self.address_2.data):
            verify_request.address_2.value = self.address_2.data

        verify_request.first_name.value = self.first_name.data
        verify_request.middle_name.value = self.middle_name.data
        verify_request.suffix.value = self.suffix.data
        verify_request.last_name.value = self.last_name.data
        verify_request.id_number.value = self.id_number.data

        try:
            if self.birth_date.data:
                verify_request.date_of_birth.value = date_str_to_iso(
                    self.birth_date.data)
        except:
            pass

        verify_request.city.value = self.city.data
        verify_request.state.value = self.state.data
        verify_request.ballot_id.value = self.ballot_id.data
        verify_request.zip.value = self.zip.data
        return verify_request
Ejemplo n.º 5
0
 def test_helpers_date_str_to_iso(self):
     self.assertEqual(helpers.date_str_to_iso('12/1/2014'),
                      '2014-12-01T00:00:00')
     self.assertEqual(helpers.date_str_to_iso('1/28/2014'),
                      '2014-01-28T00:00:00')
Ejemplo n.º 6
0
 def test_helpers_date_str_to_iso(self):
     self.assertEqual(helpers.date_str_to_iso('12/1/2014'),
                      '2014-12-01T00:00:00')
     self.assertEqual(helpers.date_str_to_iso('1/28/2014'),
                      '2014-01-28T00:00:00')