onadata.apps.viewer package¶
Subpackages¶
- onadata.apps.viewer.management package
- onadata.apps.viewer.migrations package
- Submodules
- onadata.apps.viewer.migrations.0001_initial module
- onadata.apps.viewer.migrations.0001_pre-django-3-upgrade module
- onadata.apps.viewer.migrations.0002_alter_export_export_type module
- onadata.apps.viewer.migrations.0002_export_options module
- onadata.apps.viewer.migrations.0003_auto_20151226_0100 module
- onadata.apps.viewer.migrations.0003_genericexport module
- onadata.apps.viewer.migrations.0004_auto_20151226_0109 module
- onadata.apps.viewer.migrations.0005_auto_20160408_0325 module
- onadata.apps.viewer.migrations.0006_auto_20160418_0525 module
- onadata.apps.viewer.migrations.0007_export_error_message module
- onadata.apps.viewer.migrations.0008_auto_20190125_0517 module
- onadata.apps.viewer.migrations.0009_alter_export_options module
- Module contents
- onadata.apps.viewer.models package
- Subpackages
- Submodules
- onadata.apps.viewer.models.column_rename module
- onadata.apps.viewer.models.data_dictionary module
- onadata.apps.viewer.models.export module
Export
Export.DoesNotExist
Export.MultipleObjectsReturned
Export.created_on
Export.error_message
Export.export_type
Export.export_url
Export.exports_outdated()
Export.filedir
Export.filename
Export.get_export_type_display()
Export.get_next_by_created_on()
Export.get_previous_by_created_on()
Export.id
Export.internal_status
Export.is_filename_unique()
Export.objects
Export.options
Export.save()
Export.set_filename()
Export.task_id
Export.time_of_last_submission
Export.xform
Export.xform_id
ExportBaseModel
ExportBaseModel.CSV_EXPORT
ExportBaseModel.CSV_ZIP_EXPORT
ExportBaseModel.EXPORT_MIMES
ExportBaseModel.EXPORT_OPTION_FIELDS
ExportBaseModel.EXPORT_TYPES
ExportBaseModel.EXPORT_TYPE_DICT
ExportBaseModel.EXTERNAL_EXPORT
ExportBaseModel.FAILED
ExportBaseModel.GEOJSON_EXPORT
ExportBaseModel.GOOGLE_SHEETS_EXPORT
ExportBaseModel.KML_EXPORT
ExportBaseModel.MAX_EXPORTS
ExportBaseModel.Meta
ExportBaseModel.OSM_EXPORT
ExportBaseModel.PENDING
ExportBaseModel.SAV_EXPORT
ExportBaseModel.SAV_ZIP_EXPORT
ExportBaseModel.SUCCESSFUL
ExportBaseModel.XLSX_EXPORT
ExportBaseModel.ZIP_EXPORT
ExportBaseModel.created_on
ExportBaseModel.error_message
ExportBaseModel.export_type
ExportBaseModel.export_url
ExportBaseModel.filedir
ExportBaseModel.filename
ExportBaseModel.filepath
ExportBaseModel.full_filepath
ExportBaseModel.get_export_type_display()
ExportBaseModel.get_next_by_created_on()
ExportBaseModel.get_previous_by_created_on()
ExportBaseModel.internal_status
ExportBaseModel.is_pending
ExportBaseModel.is_successful
ExportBaseModel.options
ExportBaseModel.status
ExportBaseModel.task_id
ExportBaseModel.time_of_last_submission
ExportConnectionError
ExportTypeError
GenericExport
GenericExport.DoesNotExist
GenericExport.MultipleObjectsReturned
GenericExport.content_object
GenericExport.content_type
GenericExport.content_type_id
GenericExport.created_on
GenericExport.error_message
GenericExport.export_type
GenericExport.export_url
GenericExport.exports_outdated()
GenericExport.filedir
GenericExport.filename
GenericExport.get_export_type_display()
GenericExport.get_next_by_created_on()
GenericExport.get_object_content_type()
GenericExport.get_previous_by_created_on()
GenericExport.id
GenericExport.internal_status
GenericExport.is_filename_unique()
GenericExport.object_id
GenericExport.objects
GenericExport.options
GenericExport.save()
GenericExport.task_id
GenericExport.time_of_last_submission
export_delete_callback()
get_export_options_query_kwargs()
- onadata.apps.viewer.models.parsed_instance module
ParseError
ParsedInstance
ParsedInstance.DEFAULT_BATCHSIZE
ParsedInstance.DEFAULT_LIMIT
ParsedInstance.DoesNotExist
ParsedInstance.MultipleObjectsReturned
ParsedInstance.STATUS
ParsedInstance.USERFORM_ID
ParsedInstance.add_note()
ParsedInstance.dicts()
ParsedInstance.end_time
ParsedInstance.get_notes()
ParsedInstance.id
ParsedInstance.instance
ParsedInstance.instance_id
ParsedInstance.lat
ParsedInstance.lng
ParsedInstance.objects
ParsedInstance.remove_note()
ParsedInstance.save()
ParsedInstance.start_time
ParsedInstance.to_dict()
ParsedInstance.to_dict_for_mongo()
build_sql_where()
datetime_from_str()
dict_for_mongo()
exclude_deleting_submissions_clause()
get_etag_hash_from_query()
get_name_from_survey_element()
get_sql_with_params()
query_count()
query_data()
query_fields_data()
- Module contents
- onadata.apps.viewer.templatetags package
- onadata.apps.viewer.tests package
- Submodules
- onadata.apps.viewer.tests.export_helpers module
- onadata.apps.viewer.tests.test_attachment_url module
TestAttachmentUrl
TestAttachmentUrl.setUp()
TestAttachmentUrl.tearDown()
TestAttachmentUrl.test_attachment_has_mimetype()
TestAttachmentUrl.test_attachment_not_found()
TestAttachmentUrl.test_attachment_url()
TestAttachmentUrl.test_attachment_url_has_azure_sas_token()
TestAttachmentUrl.test_attachment_url_no_redirect()
TestAttachmentUrl.test_attachment_url_w_media_id()
TestAttachmentUrl.test_attachment_url_w_media_id_no_redirect()
- onadata.apps.viewer.tests.test_charts_view module
- onadata.apps.viewer.tests.test_data_view module
TestDataView
TestDataView.setUp()
TestDataView.test_allow_if_shared()
TestDataView.test_allow_if_user_given_permission()
TestDataView.test_data_view()
TestDataView.test_data_view_with_username_and_id_string_in_uppercase()
TestDataView.test_disallow_if_user_permission_revoked()
TestDataView.test_restrict_for_anon()
TestDataView.test_restrict_for_not_owner()
- onadata.apps.viewer.tests.test_export_list module
TestDataExportURL
TestDataExportURL.setUp()
TestDataExportURL.test_csv_export_url()
TestDataExportURL.test_csv_export_url_without_records()
TestDataExportURL.test_csv_zip_export_url()
TestDataExportURL.test_sav_zip_export_long_variable_length()
TestDataExportURL.test_sav_zip_export_url()
TestDataExportURL.test_xlsx_export_url()
TestExportList
TestExportList.setUp()
TestExportList.test_csv_export_list()
TestExportList.test_csv_zip_export_list()
TestExportList.test_export_data_with_unavailable_id_string()
TestExportList.test_external_export_list()
TestExportList.test_external_export_list_no_template()
TestExportList.test_kml_export_list()
TestExportList.test_sav_zip_export_list()
TestExportList.test_unauthorised_users_cannot_export_form_data()
TestExportList.test_unsupported_type_export()
TestExportList.test_xls_export_not_supported()
TestExportList.test_xlsx_export_list()
TestExportList.test_zip_export_list()
- onadata.apps.viewer.tests.test_exports module
TestExports
TestExports.FakeDate
TestExports.setUp()
TestExports.test_404_on_export_io_error()
TestExports.test_add_index_to_filename()
TestExports.test_all_keys_cleaned_of_slashes()
TestExports.test_auto_export_if_none_exists()
TestExports.test_column_header_delimiter_export_option()
TestExports.test_create_export()
TestExports.test_create_export_url()
TestExports.test_create_export_url_with_unavailable_id_string()
TestExports.test_create_external_export_url()
TestExports.test_create_external_export_url_with_non_existing_export_id()
TestExports.test_create_external_export_without_template()
TestExports.test_create_xlsx_export_non_existent_id()
TestExports.test_csv_http_response()
TestExports.test_csv_without_na_values()
TestExports.test_delete_export_url()
TestExports.test_delete_file_on_export_delete()
TestExports.test_delete_oldest_export_on_limit()
TestExports.test_deleted_submission_not_in_export()
TestExports.test_dict_to_joined_export_notes()
TestExports.test_dict_to_joined_export_works()
TestExports.test_direct_export_returns_newest_export_if_not_updated_since()
TestExports.test_dont_auto_export_if_exports_exist()
TestExports.test_duplicate_export_filename_is_renamed()
TestExports.test_edited_submissions_in_exports()
TestExports.test_export_download_url()
TestExports.test_export_ids_dont_have_comma_separation()
TestExports.test_export_progress_output()
TestExports.test_export_progress_updates()
TestExports.test_exports_outdated_considers_pending_exports()
TestExports.test_exports_outdated_doesnt_consider_failed_exports()
TestExports.test_generate_csv_zip_export()
TestExports.test_graceful_exit_on_export_delete_if_file_doesnt_exist()
TestExports.test_invalid_export_type()
TestExports.test_last_submission_time_empty()
TestExports.test_last_submission_time_on_export()
TestExports.test_query_data_with_invalid_args()
TestExports.test_responses_for_empty_exports()
TestExports.test_split_select_multiple_export_option()
TestExports.test_unique_xls_sheet_name()
- onadata.apps.viewer.tests.test_instance_view module
TestInstanceView
TestInstanceView.setUp()
TestInstanceView.test_allow_if_shared()
TestInstanceView.test_allow_if_user_given_permission()
TestInstanceView.test_disallow_if_user_permission_revoked()
TestInstanceView.test_instance_view()
TestInstanceView.test_restrict_for_anon()
TestInstanceView.test_restrict_for_not_owner()
- onadata.apps.viewer.tests.test_kml_export module
- onadata.apps.viewer.tests.test_map_view module
- onadata.apps.viewer.tests.test_parsed_instance module
TestParsedInstance
TestParsedInstance.test_get_where_clause_or_date_range()
TestParsedInstance.test_get_where_clause_with_integer()
TestParsedInstance.test_get_where_clause_with_json_query()
TestParsedInstance.test_get_where_clause_with_string_query()
TestParsedInstance.test_invalid_date_format()
TestParsedInstance.test_parse_sort_fields_function()
TestParsedInstance.test_parse_where_clause_simple_query()
TestParsedInstance.test_parse_where_with_date_value()
TestParsedInstance.test_parse_where_with_null_value()
TestParsedInstance.test_retrieve_records_based_on_form_verion()
TestParsedInstance.test_retrieve_records_using_list_of_queries()
- onadata.apps.viewer.tests.test_stats_table_view module
- onadata.apps.viewer.tests.test_tasks module
- Module contents
Submodules¶
onadata.apps.viewer.admin module¶
onadata.apps.viewer.parsed_instance_tools module¶
ParsedInstance model utility functions
- onadata.apps.viewer.parsed_instance_tools.get_where_clause(query, form_integer_fields=None, form_decimal_fields=None)¶
Returns where clause and related parameters.
onadata.apps.viewer.signals module¶
Viewer signals module.
- onadata.apps.viewer.signals.post_save_osm_data(instance_id)¶
Process OSM data post submission.
- onadata.apps.viewer.signals.post_save_submission(sender, **kwargs)¶
Calls webhooks and OSM data processing for ParsedInstance/Instance model.
onadata.apps.viewer.tasks module¶
Export tasks.
- onadata.apps.viewer.tasks.create_async_export(xform, export_type, query, force_xlsx, options=None)¶
Starts asynchronous export tasks and returns an export object.
Throws ExportTypeError if export_type is not in EXPORT_TYPES. Throws ExportConnectionError if rabbitmq broker is down.
onadata.apps.viewer.views module¶
data views.
- onadata.apps.viewer.views.add_submission_with(request, username, id_string)¶
Returns JSON response with Enketo form url preloaded with coordinates.
- onadata.apps.viewer.views.attachment_url(request, size='medium')¶
Redirects to image attachment of the specified size, defaults to ‘medium’.
- onadata.apps.viewer.views.average(values)¶
Get average of a list of values.
- onadata.apps.viewer.views.charts(request, username, id_string)¶
Charts view.
- onadata.apps.viewer.views.create_export(request, username, id_string, export_type)¶
Create async export tasks view.
- onadata.apps.viewer.views.data_export(request, username, id_string, export_type)¶
Data export view.
- onadata.apps.viewer.views.data_view(request, username, id_string)¶
Data view displays submission data.
- onadata.apps.viewer.views.delete_export(request, username, id_string, export_type)¶
Delete export view.
- onadata.apps.viewer.views.encode(time_str)¶
Reformat a time string into YYYY-MM-dd HH:mm:ss.
- onadata.apps.viewer.views.export_download(request, username, id_string, export_type, filename)¶
Export download view.
- onadata.apps.viewer.views.export_list(request, username, id_string, export_type)¶
Export list view.
- onadata.apps.viewer.views.export_progress(request, username, id_string, export_type)¶
Async export progress view.
- onadata.apps.viewer.views.format_date_for_mongo(time_str)¶
Reformat a time string into YYYY-MM-ddTHH:mm:ss.
- onadata.apps.viewer.views.google_xlsx_export(request, username, id_string)¶
Google export view, uploads an excel export to google drive and then redirects to the uploaded google sheet.
- onadata.apps.viewer.views.instance(request, username, id_string)¶
Data view for browsing submissions one at a time.
- onadata.apps.viewer.views.instances_for_export(data_dictionary, start=None, end=None)¶
Returns Instance submission queryset filtered by start and end dates.
- onadata.apps.viewer.views.kml_export(request, username, id_string)¶
KML export view.
- onadata.apps.viewer.views.map_embed_view(request, username, id_string)¶
Embeded map view.
- onadata.apps.viewer.views.map_view(request, username, id_string, template='map.html')¶
Map view.
- onadata.apps.viewer.views.set_instances_for_export(id_string, owner, request)¶
Apply start and end filters to DataDictionary.instances_for_export.
Returns True/False and DataDictionary/HttpResponseBadRequest if the process is successful or not respectively.
- onadata.apps.viewer.views.stats_tables(request, username, id_string)¶
Stats view.
- onadata.apps.viewer.views.thank_you_submission(request, username, id_string)¶
Thank you view after successful submission.
- onadata.apps.viewer.views.zip_export(request, username, id_string)¶
Zip export view.
onadata.apps.viewer.xls_writer module¶
XlsWriter module - generate a spreadsheet workbook in XLSX format.
- class onadata.apps.viewer.xls_writer.XlsWriter¶
Bases:
object
XlsWriter class - generate a spreadsheet workbook in XLSX format.
- add_column(sheet_name, column_name)¶
Add a
column_name
to the givensheet_name
to this workbook.
- add_obs(obs)¶
Add data in
obs
dictionary into specified sheets to this workbook.
- add_row(sheet_name, row)¶
Add a
row
to the givensheet_name
to this workbook.
- add_sheet(name)¶
Add a given
name
sheet to this workbook.
- reset_workbook()¶
Reset a Workbook to sensible default.
- save_workbook_to_file()¶
Saves the XLSX workbook to a file.
- set_data_dictionary(data_dictionary)¶
Set the data_dictionary XForm model object for this class.
- set_file(file_object=None)¶
If the file object is None use a StringIO object.
- write_tables_to_workbook(tables)¶
tables should be a list of pairs, the first element in the pair is the name of the table, the second is the actual data.
TODO: figure out how to write to the xls file rather than keep the whole workbook in memory.