コード例 #1
0
    def new_edit_subject_module(self, app, reg_form_id):

        def add_edit_form_to_module(module_):
            edit_form = module_.new_form('Edit Subject', None)
            edit_form.get_unique_id()
            edit_form.source = self.get_subject_form_source('Edit Subject')
            edit_form.requires = 'case'
            update = dict(self.case_update, name='/data/' + CC_SUBJECT_KEY)
            preload = {v: k for k, v in update.items()}
            edit_form.actions.case_preload = PreloadAction(
                preload=preload,
                condition=FormActionCondition(type='always')
            )
            edit_form.actions.update_case = UpdateCaseAction(
                update=update,
                condition=FormActionCondition(type='always')
            )

        module = app.add_module(Module.new_module('Study Subjects', None))
        module.unique_id = 'study_subjects'
        module.case_type = 'subject'
        module.case_list_form = CaseListForm(
            form_id=reg_form_id,
            label={'en': 'Register Subject'}
        )
        add_edit_form_to_module(module)
        return module
コード例 #2
0
ファイル: modules.py プロジェクト: lskdev/commcare-hq
def _init_biometrics_identify_module(app, lang, enroll_form_id):
    """
    Creates Identification Module for Biometrics
    """
    module = app.add_module(
        Module.new_module(_("Identify Registered Person"), lang))

    # make sure app has Register From Case List Add-On enabled
    app.add_ons["register_from_case_list"] = True

    # turn on Register from Case List with Simprints Enrolment form
    module.case_list_form = CaseListForm(
        form_id=enroll_form_id,
        label=dict([(lang, _("Enroll New Person"))]),
    )
    case_list = module.case_details.short
    case_list.lookup_enabled = True
    case_list.lookup_action = "com.simprints.id.IDENTIFY"
    case_list.lookup_name = _("Scan Fingerprint")
    case_list.lookup_extras = list([
        dict(key=key, value="'{}'".format(value))
        for key, value in app.biometric_context.items()
    ])
    case_list.lookup_responses = [
        {
            'key': 'fake'
        },
    ]
    case_list.lookup_display_results = True
    case_list.lookup_field_header[lang] = _("Confidence")
    case_list.lookup_field_template = 'simprintsId'

    identify = app.new_form(module.id, _("Followup with Person"), lang)
    identify.requires = 'case'
    identify.actions.update_case = UpdateCaseAction(
        condition=FormActionCondition(type='always'))

    module.case_type = 'person'