Esempio n. 1
0
def validate_customer_project_phase(form, value):
    """
    Validate that customer project and phase are linked

    :param obj form: The form object
    :param dict value: The submitted values
    """
    customer_id = value['customer_id']
    project_id = value['project_id']
    phase_id = value.get('phase_id')

    if phase_id and not Project.check_phase_id(project_id, phase_id):
        exc = colander.Invalid(form, u"Projet et dossier ne correspondent pas")
        exc['phase_id'] = u"Ne correspond pas au projet ci-dessus"
        raise exc
    if not Customer.check_project_id(customer_id, project_id):
        exc = colander.Invalid(form, u"Client et projet ne correspondent pas")
        exc['project_id'] = u"Ne correspond pas au client ci-dessus"
        raise exc
Esempio n. 2
0
def validate_customer_project_phase(form, value):
    """
    Validate that customer project and phase are linked

    :param obj form: The form object
    :param dict value: The submitted values
    """
    customer_id = value['customer_id']
    project_id = value['project_id']
    phase_id = value.get('phase_id')

    if phase_id and not Project.check_phase_id(project_id, phase_id):
        exc = colander.Invalid(form, u"Projet et dossier ne correspondent pas")
        exc['phase_id'] = u"Ne correspond pas au projet ci-dessus"
        raise exc
    if not Customer.check_project_id(customer_id, project_id):
        exc = colander.Invalid(form, u"Client et projet ne correspondent pas")
        exc['project_id'] = u"Ne correspond pas au client ci-dessus"
        raise exc
Esempio n. 3
0
def test_check_project_id(customer, project):
    from autonomie.models.customer import Customer
    assert Customer.check_project_id(customer.id, project.id)
    assert not Customer.check_project_id(customer.id, project.id + 1)