Ejemplo n.º 1
0
 def setUp(self):
     self.user = User.objects.create(username="******", email="*****@*****.**")
     self.user.set_password("pass")
     self.xform1 = DataDictionary()
     self.xform1.user = self.user
     self.xform1.json = """
     {"id_string": "yes_or_no", "children": [{"name": "yesno", "label": "Yes or no?", "type": "text"}], "name": "yes_or_no", "title": "yes_or_no", "type": "survey"}
     """.strip()
     self.xform2 = DataDictionary()
     self.xform2.user = self.user
     self.xform2.json = """
     {"id_string": "start_time", "children": [{"name": "start_time", "type": "start"}], "name": "start_time", "title": "start_time", "type": "survey"}
     """.strip()
     def get_xml_for_form(xform):
         builder = SurveyElementBuilder()
         sss = builder.create_survey_element_from_json(xform.json)
         xform.xml = sss.to_xml()
         xform._mark_start_time_boolean()
         xform.save()
     get_xml_for_form(self.xform1)
     get_xml_for_form(self.xform2)
Ejemplo n.º 2
0
def publish_xml_form(xml_file, user, id_string=None):
    xml = xml_file.read()
    survey = create_survey_element_from_xml(xml)
    form_json = survey.to_json()
    if id_string:
        dd = DataDictionary.objects.get(user=user, id_string=id_string)
        dd.xml = xml
        dd.json = form_json
        dd._mark_start_time_boolean()
        set_uuid(dd)
        dd._set_uuid_in_xml()
        dd.save()
        return dd
    else:
        dd = DataDictionary(user=user, xml=xml, json=form_json)
        dd._mark_start_time_boolean()
        set_uuid(dd)
        dd._set_uuid_in_xml(file_name=xml_file.name)
        dd.save()
        return dd