示例#1
0
class ActivityActionConfig(colander.Schema):
    id = forms.id_node()
    label = colander.SchemaNode(colander.String(),
                                title=u"Titre",
                                description=u"Titre dans la sortie pdf",
                                validator=colander.Length(max=255))
    children = ActivitySubActionSeq(
        title=u"",
        widget=deform.widget.SequenceWidget(
            template=TEMPLATES_URL + "clean_sequence.pt",
            add_subitem_text_template=u"Ajouter un sous-titre",
        ))
示例#2
0
class WorkshopInfo1(colander.Schema):
    id = forms.id_node()
    label = colander.SchemaNode(colander.String(),
                                title=u"Titre",
                                description=u"Titre dans la sortie pdf",
                                validator=colander.Length(max=255))
    children = WorkshopInfo2Seq(
        title=u'',
        widget=CleanSequenceWidget(
            add_subitem_text_template=u"Ajouter un sous-titre",
            orderable=True,
        ))
示例#3
0
class CompetenceRequirement(colander.MappingSchema):
    deadline_id = forms.id_node()
    deadline_label = colander.SchemaNode(
        colander.String(),
        widget=deform.widget.TextInputWidget(readonly=True),
        title=u"Pour l'échéance",
        missing=colander.drop,
    )
    scale_id = colander.SchemaNode(
        colander.Integer(),
        title=u"Niveau requis",
        description=u"Sera mis en évidence dans l'interface",
        widget=forms.get_deferred_select(CompetenceScale))
示例#4
0
class WorkshopInfo2(colander.Schema):
    id = forms.id_node()
    label = colander.SchemaNode(colander.String(),
                                title=u"Sous-titre",
                                description=u"Sous-titre dans la sortie pdf",
                                validator=colander.Length(max=255))
    children = WorkshopInfo3Seq(
        title=u"",
        widget=deform.widget.SequenceWidget(
            add_subitem_text_template=u"Ajouter un sous-titre 2",
            orderable=True,
            template=TEMPLATES_URL + "clean_sequence.pt",
        ))
示例#5
0
class ExpenseConfig(colander.MappingSchema):
    """
        Schema for the configuration of different expense types
    """
    id = forms.id_node()
    active = colander.SchemaNode(
        colander.Boolean(),
        title=u"Actif",
        default=True,
        description=u"En décochant cette entrée, elle n'apparaîtra plus dans \
l'interface, mais restera associée aux notes de frais existantes.")

    label = colander.SchemaNode(colander.String(),
                                title=u"Libellé",
                                validator=colander.Length(max=50))

    code = colander.SchemaNode(colander.String(),
                               title=u"Compte de charge de la dépense",
                               validator=colander.Length(max=15))

    code_tva = colander.SchemaNode(colander.String(),
                                   title=u"Code TVA (si nécessaire)",
                                   missing="",
                                   validator=colander.Length(max=15))

    compte_tva = colander.SchemaNode(colander.String(),
                                     title=u"Compte de TVA déductible",
                                     missing="",
                                     validator=colander.Length(max=15))

    contribution = colander.SchemaNode(
        colander.Boolean(),
        title=u"Contribution",
        description=u"Ce type de frais est-il intégré dans la contribution \
à la CAE ?",
    )
示例#6
0
文件: company.py 项目: lluc/autonomie
class CompanySchema(colander.MappingSchema):
    """
        Company add/edit form schema
    """
    user_id = forms.id_node()
    name = colander.SchemaNode(colander.String(),
                               widget=deferred_edit_adminonly_widget,
                               title=u'Nom')

    goal = colander.SchemaNode(colander.String(),
                               title=u"Descriptif de l'activité")

    activities = CompanyActivitySchema(
        title=u"Domaines d'activité",
        missing=colander.drop,
    )

    email = forms.mail_node(missing=u'')

    phone = colander.SchemaNode(colander.String(),
                                title=u'Téléphone',
                                missing=u'')

    mobile = colander.SchemaNode(colander.String(),
                                 title=u'Téléphone portable',
                                 missing=u'')

    logo = colander.SchemaNode(
        FileData(),
        widget=files.deferred_upload_widget,
        title="Choisir un logo",
        validator=validate_image_mime,
        missing=colander.drop,
        description=u"Charger un fichier de type image *.png *.jpeg \
*.jpg ...")

    header = colander.SchemaNode(
        FileData(),
        widget=deferred_upload_header_widget,
        title=u'Entête des fichiers PDF',
        validator=validate_image_mime,
        missing=colander.drop,
        description=u"Charger un fichier de type image *.png *.jpeg \
*.jpg ... Le fichier est idéalement au format 20/4 (par exemple 1000px x \
200 px)",
    )

    # Fields specific to the treasury
    code_compta = colander.SchemaNode(
        colander.String(),
        title=u"Compte analytique",
        description=u"Compte analytique utilisé dans le logiciel de \
comptabilité",
        missing="")

    contribution = colander.SchemaNode(
        colander.Integer(),
        widget=deform.widget.TextInputWidget(input_append="%",
                                             css_class="col-md-1"),
        validator=colander.Range(
            min=0,
            max=100,
            min_err=u"Veuillez fournir un nombre supérieur à 0",
            max_err=u"Veuillez fournir un nombre inférieur à 100"),
        title=u"Contribution à la CAE",
        missing=colander.drop,
        description=u"Pourcentage que cette entreprise contribue à la CAE",
    )

    cgv = forms.textarea_node(
        title=u"Conditions générales complémentaires",
        richwidget=True,
        missing="",
    )

    RIB = colander.SchemaNode(colander.String(), title=u'RIB', missing=u'')

    IBAN = colander.SchemaNode(colander.String(), title=u'IBAN', missing=u'')
示例#7
0
class CompanySchema(colander.MappingSchema):
    """
        Company add/edit form schema
    """
    user_id = forms.id_node()
    name = colander.SchemaNode(
        colander.String(),
        widget=deferred_edit_adminonly_widget,
        title=u'Nom'
    )

    goal = colander.SchemaNode(
        colander.String(),
        title=u"Descriptif de l'activité")

    activities = CompanyActivitySchema(
        title=u"Domaines d'activité",
        missing=colander.drop,
    )

    email = forms.mail_node(missing=u'')

    phone = colander.SchemaNode(
            colander.String(),
            title=u'Téléphone',
            missing=u'')

    mobile = colander.SchemaNode(
            colander.String(),
            title=u'Téléphone portable',
            missing=u'')

    logo = files.ImageNode(
        title="Choisir un logo",
        missing=colander.drop,
    )
    header = files.ImageNode(
        widget=deferred_upload_header_widget,
        title=u'Entête des fichiers PDF',
        missing=colander.drop,
        description=u"Le fichier est idéalement au format 5/1 (par exemple \
1000px x 200 px)",
    )

    # Fields specific to the treasury
    code_compta = colander.SchemaNode(
            colander.String(),
            title=u"Compte analytique",
            description=u"Compte analytique utilisé dans le logiciel de \
comptabilité",
            missing="")

    # general_customer_account = colander.SchemaNode(
    #     colander.String(),
    #     title=u"Compte client général",
    #     description="",
    #     missing="",
    # )

    # third_party_customer_account = colander.SchemaNode(
    #     colander.String(),
    #     title=u"Compte client tiers",
    #     description="",
    #     missing="",
    # )

    # bank_account = colander.SchemaNode(
    #     colander.String(),
    #     title=u"Compte de banque",
    #     description="",
    #     missing="",
    # )

    # custom_insurance_rate = colander.SchemaNode(
    #         QuantityType(),
    #         widget=deform.widget.TextInputWidget(
    #             input_append="%",
    #             css_class="col-md-1"
    #             ),
    #         validator=colander.Range(
    #             min=0,
    #             max=100,
    #             min_err=u"Veuillez fournir un nombre supérieur à 0",
    #             max_err=u"Veuillez fournir un nombre inférieur à 100"
    #         ),
    #         title=u"Taux de Responsabilité Civile Professionnel",
    #         missing=colander.drop,
    #         description=u"Pourcentage du taux d'assurance professionnelle "
    #                     u"de cette entreprise dans la CAE",
    # )

    contribution = colander.SchemaNode(
            QuantityType(),
            widget=deform.widget.TextInputWidget(
                input_append="%",
                css_class="col-md-1"
                ),
            validator=colander.Range(
                min=0,
                max=100,
                min_err=u"Veuillez fournir un nombre supérieur à 0",
                max_err=u"Veuillez fournir un nombre inférieur à 100"),
            title=u"Contribution à la CAE",
            missing=colander.drop,
            description=u"Pourcentage que cette entreprise contribue à la CAE",
    )

    cgv = forms.textarea_node(
        title=u"Conditions générales complémentaires",
        richwidget=True,
        missing="",
    )

    RIB = colander.SchemaNode(
            colander.String(),
            title=u'RIB',
            missing=u'')

    IBAN = colander.SchemaNode(
            colander.String(),
            title=u'IBAN',
            missing=u'')

    come_from = forms.come_from_node()
示例#8
0
class SubCompetenceConfigSchema(colander.MappingSchema):
    id = forms.id_node()
    label = colander.SchemaNode(
        colander.String(),
        title=u"Libellé",
    )
示例#9
0
class WorkshopInfo3(colander.MappingSchema):
    id = forms.id_node()
    label = colander.SchemaNode(colander.String(),
                                title=u"Sous-titre 2",
                                description=u"Sous-titre 2 dans la sortie pdf",
                                validator=colander.Length(max=100))
示例#10
0
class ActionConfig(colander.MappingSchema):
    id = forms.id_node()
    label = colander.SchemaNode(colander.String(),
                                title=u"Sous-titre",
                                description=u"Sous-titre dans la sortie pdf",
                                validator=colander.Length(max=100))
示例#11
0
class MailSchema(colander.MappingSchema):
    company_id = id_node()
    attachment = colander.SchemaNode(
        colander.String(),
        missing=colander.drop,
    )