def _get_submissions_for_display(current_page, dbm, questionnaire_code, questions, pagination, start_time=None, end_time=None): if pagination: submissions, ids = get_submissions_made_for_form( dbm, questionnaire_code, start_time=start_time, end_time=end_time, page_number=current_page, page_size=PAGE_SIZE) else: submissions, ids = get_submissions_made_for_form( dbm, questionnaire_code, start_time=start_time, end_time=end_time, page_number=current_page, page_size=None) submissions = helper.get_submissions(questions, submissions) return submissions, ids
def _get_submissions_for_display(current_page, dbm, questionnaire_code, questions, pagination, start_time = None, end_time = None): if pagination: submissions, ids = get_submissions_made_for_form(dbm, questionnaire_code, start_time=start_time, end_time=end_time, page_number=current_page, page_size=PAGE_SIZE) else: submissions, ids = get_submissions_made_for_form(dbm, questionnaire_code, start_time=start_time, end_time=end_time, page_number=current_page, page_size=None) submissions = helper.get_submissions(questions, submissions) return submissions, ids
def test_error_messages_are_being_logged_in_submissions(self): text = "clinic +EID %s +ARV 150 " % self.entity.id self.send_sms(text) oneDay = datetime.timedelta(days=1) tomorrow = datetime.datetime.now() + oneDay submission_list, ids = get_submissions_made_for_form(self.dbm, "clinic", 0, int(mktime(tomorrow.timetuple())) * 1000) self.assertEquals(1, len(submission_list)) self.assertEquals(u"Answer 150 for question ARV is greater than allowed.", submission_list[0]['error_message'])
def test_get_submissions_for_form(self): self.dbm._save_document( SubmissionLogDocument(channel="transport", source=1234, destination=12345, form_code="abc", values={ 'Q1': 'ans1', 'Q2': 'ans2' }, status=False, error_message="", data_record_id='2345678')) self.dbm._save_document( SubmissionLogDocument(channel="transport", source=1234, destination=12345, form_code="abc", values={ 'Q1': 'ans12', 'Q2': 'ans22' }, status=False, error_message="", data_record_id='1234567')) self.dbm._save_document( SubmissionLogDocument(channel="transport", source=1234, destination=12345, form_code="def", values={ 'defQ1': 'defans12', 'defQ2': 'defans22' }, status=False, error_message="", data_record_id='345678')) oneDay = datetime.timedelta(days=1) tomorrow = datetime.datetime.now() + oneDay submission_list, ids = get_submissions_made_for_form( self.dbm, "abc", 0, int(mktime(tomorrow.timetuple())) * 1000) self.assertEquals(2, len(submission_list)) self.assertEquals({ 'Q1': 'ans12', 'Q2': 'ans22' }, submission_list[0]['values']) self.assertEquals({ 'Q1': 'ans1', 'Q2': 'ans2' }, submission_list[1]['values']) self.assertEquals(2, len(ids)) self.assertListEqual(['1234567', '2345678'], ids)
def test_error_messages_are_being_logged_in_submissions(self): text = "clinic +EID %s +ARV 150 " % self.entity.id self.send_sms(text) oneDay = datetime.timedelta(days=1) tomorrow = datetime.datetime.now() + oneDay submission_list, ids = get_submissions_made_for_form( self.dbm, "clinic", 0, int(mktime(tomorrow.timetuple())) * 1000) self.assertEquals(1, len(submission_list)) self.assertEquals( u"Answer 150 for question ARV is greater than allowed.", submission_list[0]['error_message'])
def activate_project(request, project_id=None): manager = get_database_manager(request) project = models.get_project(project_id, manager) project.activate(manager) form_model = helper.load_questionnaire(manager, project.qid) oneDay = datetime.timedelta(days=1) tomorrow = datetime.datetime.now() + oneDay submissions, ids = get_submissions_made_for_form(manager, form_model.form_code, start_time=0, end_time=int(mktime(tomorrow.timetuple())) * 1000, page_size=None) for each in ids: if each is not None: data_record = manager._load_document(each, DataRecordDocument) manager.invalidate(each) SubmissionLogger(manager).void_data_record(data_record.submission.get("submission_id")) return HttpResponseRedirect(reverse(project_overview, args=[project_id]))
def activate_project(request, project_id=None): manager = get_database_manager(request) project = models.get_project(project_id, manager) project.activate(manager) form_model = helper.load_questionnaire(manager, project.qid) oneDay = datetime.timedelta(days=1) tomorrow = datetime.datetime.now() + oneDay submissions, ids = get_submissions_made_for_form( manager, form_model.form_code, start_time=0, end_time=int(mktime(tomorrow.timetuple())) * 1000, page_size=None) for each in ids: if each is not None: data_record = manager._load_document(each, DataRecordDocument) manager.invalidate(each) SubmissionLogger(manager).void_data_record( data_record.submission.get("submission_id")) return HttpResponseRedirect(reverse(project_overview, args=[project_id]))
def test_get_submissions_for_form(self): self.dbm._save_document(SubmissionLogDocument(channel="transport", source=1234, destination=12345, form_code="abc", values={'Q1': 'ans1', 'Q2': 'ans2'}, status=False, error_message="", data_record_id='2345678')) self.dbm._save_document(SubmissionLogDocument(channel="transport", source=1234, destination=12345, form_code="abc", values={'Q1': 'ans12', 'Q2': 'ans22'}, status=False, error_message="", data_record_id='1234567')) self.dbm._save_document(SubmissionLogDocument(channel="transport", source=1234, destination=12345, form_code="def", values={'defQ1': 'defans12', 'defQ2': 'defans22'}, status=False, error_message="", data_record_id='345678')) oneDay = datetime.timedelta(days=1) tomorrow = datetime.datetime.now() + oneDay submission_list, ids = get_submissions_made_for_form(self.dbm, "abc", 0, int(mktime(tomorrow.timetuple())) * 1000) self.assertEquals(2, len(submission_list)) self.assertEquals({'Q1': 'ans12', 'Q2': 'ans22'}, submission_list[0]['values']) self.assertEquals({'Q1': 'ans1', 'Q2': 'ans2'}, submission_list[1]['values']) self.assertEquals(2, len(ids)) self.assertListEqual(['1234567', '2345678'], ids)