django-advanced-report-builder 0.9.3__tar.gz → 0.9.4__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Potentially problematic release.
This version of django-advanced-report-builder might be problematic. Click here for more details.
- {django-advanced-report-builder-0.9.3/django_advanced_report_builder.egg-info → django_advanced_report_builder-0.9.4}/PKG-INFO +17 -2
- {django-advanced-report-builder-0.9.3 → django_advanced_report_builder-0.9.4}/advanced_report_builder/views/datatables/modal.py +12 -7
- {django-advanced-report-builder-0.9.3 → django_advanced_report_builder-0.9.4}/advanced_report_builder/views/datatables/utils.py +3 -3
- {django-advanced-report-builder-0.9.3 → django_advanced_report_builder-0.9.4}/advanced_report_builder/views/report_utils_mixin.py +27 -23
- {django-advanced-report-builder-0.9.3 → django_advanced_report_builder-0.9.4/django_advanced_report_builder.egg-info}/PKG-INFO +17 -2
- {django-advanced-report-builder-0.9.3 → django_advanced_report_builder-0.9.4}/setup.py +1 -1
- {django-advanced-report-builder-0.9.3 → django_advanced_report_builder-0.9.4}/LICENSE +0 -0
- {django-advanced-report-builder-0.9.3 → django_advanced_report_builder-0.9.4}/MANIFEST.in +0 -0
- {django-advanced-report-builder-0.9.3 → django_advanced_report_builder-0.9.4}/README.md +0 -0
- {django-advanced-report-builder-0.9.3 → django_advanced_report_builder-0.9.4}/advanced_report_builder/.DS_Store +0 -0
- {django-advanced-report-builder-0.9.3 → django_advanced_report_builder-0.9.4}/advanced_report_builder/__init__.py +0 -0
- {django-advanced-report-builder-0.9.3 → django_advanced_report_builder-0.9.4}/advanced_report_builder/admin.py +0 -0
- {django-advanced-report-builder-0.9.3 → django_advanced_report_builder-0.9.4}/advanced_report_builder/apps.py +0 -0
- {django-advanced-report-builder-0.9.3 → django_advanced_report_builder-0.9.4}/advanced_report_builder/column_types.py +0 -0
- {django-advanced-report-builder-0.9.3 → django_advanced_report_builder-0.9.4}/advanced_report_builder/columns.py +0 -0
- {django-advanced-report-builder-0.9.3 → django_advanced_report_builder-0.9.4}/advanced_report_builder/customise.py +0 -0
- {django-advanced-report-builder-0.9.3 → django_advanced_report_builder-0.9.4}/advanced_report_builder/data_merge/__init__.py +0 -0
- {django-advanced-report-builder-0.9.3 → django_advanced_report_builder-0.9.4}/advanced_report_builder/data_merge/utils.py +0 -0
- {django-advanced-report-builder-0.9.3 → django_advanced_report_builder-0.9.4}/advanced_report_builder/data_merge/widget.py +0 -0
- {django-advanced-report-builder-0.9.3 → django_advanced_report_builder-0.9.4}/advanced_report_builder/duplicate.py +0 -0
- {django-advanced-report-builder-0.9.3 → django_advanced_report_builder-0.9.4}/advanced_report_builder/exceptions.py +0 -0
- {django-advanced-report-builder-0.9.3 → django_advanced_report_builder-0.9.4}/advanced_report_builder/field_types.py +0 -0
- {django-advanced-report-builder-0.9.3 → django_advanced_report_builder-0.9.4}/advanced_report_builder/field_utils.py +0 -0
- {django-advanced-report-builder-0.9.3 → django_advanced_report_builder-0.9.4}/advanced_report_builder/filter_query.py +0 -0
- {django-advanced-report-builder-0.9.3 → django_advanced_report_builder-0.9.4}/advanced_report_builder/generate_series.py +0 -0
- {django-advanced-report-builder-0.9.3 → django_advanced_report_builder-0.9.4}/advanced_report_builder/globals.py +0 -0
- {django-advanced-report-builder-0.9.3 → django_advanced_report_builder-0.9.4}/advanced_report_builder/includes.py +0 -0
- {django-advanced-report-builder-0.9.3 → django_advanced_report_builder-0.9.4}/advanced_report_builder/migrations/0001_initial.py +0 -0
- {django-advanced-report-builder-0.9.3 → django_advanced_report_builder-0.9.4}/advanced_report_builder/migrations/0002_auto_20220209_1657.py +0 -0
- {django-advanced-report-builder-0.9.3 → django_advanced_report_builder-0.9.4}/advanced_report_builder/migrations/0003_auto_20220215_1219.py +0 -0
- {django-advanced-report-builder-0.9.3 → django_advanced_report_builder-0.9.4}/advanced_report_builder/migrations/0004_customreport.py +0 -0
- {django-advanced-report-builder-0.9.3 → django_advanced_report_builder-0.9.4}/advanced_report_builder/migrations/0005_auto_20220303_0958.py +0 -0
- {django-advanced-report-builder-0.9.3 → django_advanced_report_builder-0.9.4}/advanced_report_builder/migrations/0006_auto_20220310_1147.py +0 -0
- {django-advanced-report-builder-0.9.3 → django_advanced_report_builder-0.9.4}/advanced_report_builder/migrations/0007_auto_20220322_1939.py +0 -0
- {django-advanced-report-builder-0.9.3 → django_advanced_report_builder-0.9.4}/advanced_report_builder/migrations/0008_auto_20220404_1144.py +0 -0
- {django-advanced-report-builder-0.9.3 → django_advanced_report_builder-0.9.4}/advanced_report_builder/migrations/0009_auto_20230428_1554.py +0 -0
- {django-advanced-report-builder-0.9.3 → django_advanced_report_builder-0.9.4}/advanced_report_builder/migrations/0010_auto_20230428_2033.py +0 -0
- {django-advanced-report-builder-0.9.3 → django_advanced_report_builder-0.9.4}/advanced_report_builder/migrations/0011_auto_20230620_1449.py +0 -0
- {django-advanced-report-builder-0.9.3 → django_advanced_report_builder-0.9.4}/advanced_report_builder/migrations/0012_auto_20230718_1642.py +0 -0
- {django-advanced-report-builder-0.9.3 → django_advanced_report_builder-0.9.4}/advanced_report_builder/migrations/0013_reportqueryorder.py +0 -0
- {django-advanced-report-builder-0.9.3 → django_advanced_report_builder-0.9.4}/advanced_report_builder/migrations/0014_auto_20240706_2207.py +0 -0
- {django-advanced-report-builder-0.9.3 → django_advanced_report_builder-0.9.4}/advanced_report_builder/migrations/0015_report_user_created_report_user_updated.py +0 -0
- {django-advanced-report-builder-0.9.3 → django_advanced_report_builder-0.9.4}/advanced_report_builder/migrations/__init__.py +0 -0
- {django-advanced-report-builder-0.9.3 → django_advanced_report_builder-0.9.4}/advanced_report_builder/models.py +0 -0
- {django-advanced-report-builder-0.9.3 → django_advanced_report_builder-0.9.4}/advanced_report_builder/report_builder.py +0 -0
- {django-advanced-report-builder-0.9.3 → django_advanced_report_builder-0.9.4}/advanced_report_builder/signals.py +0 -0
- {django-advanced-report-builder-0.9.3 → django_advanced_report_builder-0.9.4}/advanced_report_builder/static/.DS_Store +0 -0
- {django-advanced-report-builder-0.9.3 → django_advanced_report_builder-0.9.4}/advanced_report_builder/static/advanced_report_builder/.DS_Store +0 -0
- {django-advanced-report-builder-0.9.3 → django_advanced_report_builder-0.9.4}/advanced_report_builder/static/advanced_report_builder/chart-js/js/chart.esm.js +0 -0
- {django-advanced-report-builder-0.9.3 → django_advanced_report_builder-0.9.4}/advanced_report_builder/static/advanced_report_builder/chart-js/js/chart.js +0 -0
- {django-advanced-report-builder-0.9.3 → django_advanced_report_builder-0.9.4}/advanced_report_builder/static/advanced_report_builder/chart-js/js/chart.min.js +0 -0
- {django-advanced-report-builder-0.9.3 → django_advanced_report_builder-0.9.4}/advanced_report_builder/static/advanced_report_builder/chart-js/js/chartjs-adapter-moment.min.js +0 -0
- {django-advanced-report-builder-0.9.3 → django_advanced_report_builder-0.9.4}/advanced_report_builder/static/advanced_report_builder/chart-js/js/chartjs-plugin-datalabels.min.js +0 -0
- {django-advanced-report-builder-0.9.3 → django_advanced_report_builder-0.9.4}/advanced_report_builder/static/advanced_report_builder/chart-js/js/chunks/helpers.segment.js +0 -0
- {django-advanced-report-builder-0.9.3 → django_advanced_report_builder-0.9.4}/advanced_report_builder/static/advanced_report_builder/chart-js/js/helpers.esm.js +0 -0
- {django-advanced-report-builder-0.9.3 → django_advanced_report_builder-0.9.4}/advanced_report_builder/static/advanced_report_builder/d3/js/d3.js +0 -0
- {django-advanced-report-builder-0.9.3 → django_advanced_report_builder-0.9.4}/advanced_report_builder/static/advanced_report_builder/d3/js/d3.min.js +0 -0
- {django-advanced-report-builder-0.9.3 → django_advanced_report_builder-0.9.4}/advanced_report_builder/static/advanced_report_builder/d3-funnel/js/d3-funnel.js +0 -0
- {django-advanced-report-builder-0.9.3 → django_advanced_report_builder-0.9.4}/advanced_report_builder/static/advanced_report_builder/d3-funnel/js/d3-funnel.min.js +0 -0
- {django-advanced-report-builder-0.9.3 → django_advanced_report_builder-0.9.4}/advanced_report_builder/static/advanced_report_builder/dashboard/js/dashboard.js +0 -0
- {django-advanced-report-builder-0.9.3 → django_advanced_report_builder-0.9.4}/advanced_report_builder/static/advanced_report_builder/dot/js/.gitignore +0 -0
- {django-advanced-report-builder-0.9.3 → django_advanced_report_builder-0.9.4}/advanced_report_builder/static/advanced_report_builder/dot/js/.travis.yml +0 -0
- {django-advanced-report-builder-0.9.3 → django_advanced_report_builder-0.9.4}/advanced_report_builder/static/advanced_report_builder/dot/js/LICENSE-DOT.txt +0 -0
- {django-advanced-report-builder-0.9.3 → django_advanced_report_builder-0.9.4}/advanced_report_builder/static/advanced_report_builder/dot/js/README.md +0 -0
- {django-advanced-report-builder-0.9.3 → django_advanced_report_builder-0.9.4}/advanced_report_builder/static/advanced_report_builder/dot/js/bin/dot-packer +0 -0
- {django-advanced-report-builder-0.9.3 → django_advanced_report_builder-0.9.4}/advanced_report_builder/static/advanced_report_builder/dot/js/bower.json +0 -0
- {django-advanced-report-builder-0.9.3 → django_advanced_report_builder-0.9.4}/advanced_report_builder/static/advanced_report_builder/dot/js/doT.js +0 -0
- {django-advanced-report-builder-0.9.3 → django_advanced_report_builder-0.9.4}/advanced_report_builder/static/advanced_report_builder/dot/js/doT.min.js +0 -0
- {django-advanced-report-builder-0.9.3 → django_advanced_report_builder-0.9.4}/advanced_report_builder/static/advanced_report_builder/dot/js/doU.js +0 -0
- {django-advanced-report-builder-0.9.3 → django_advanced_report_builder-0.9.4}/advanced_report_builder/static/advanced_report_builder/dot/js/index.js +0 -0
- {django-advanced-report-builder-0.9.3 → django_advanced_report_builder-0.9.4}/advanced_report_builder/static/advanced_report_builder/dot/js/package.json +0 -0
- {django-advanced-report-builder-0.9.3 → django_advanced_report_builder-0.9.4}/advanced_report_builder/static/advanced_report_builder/fullcalendar/.DS_Store +0 -0
- {django-advanced-report-builder-0.9.3 → django_advanced_report_builder-0.9.4}/advanced_report_builder/static/advanced_report_builder/jquery_extendext/js/jQuery.extendext.js +0 -0
- {django-advanced-report-builder-0.9.3 → django_advanced_report_builder-0.9.4}/advanced_report_builder/static/advanced_report_builder/jquery_extendext/js/jQuery.extendext.min.js +0 -0
- {django-advanced-report-builder-0.9.3 → django_advanced_report_builder-0.9.4}/advanced_report_builder/static/advanced_report_builder/query_builder/.DS_Store +0 -0
- {django-advanced-report-builder-0.9.3 → django_advanced_report_builder-0.9.4}/advanced_report_builder/static/advanced_report_builder/query_builder/css/.DS_Store +0 -0
- {django-advanced-report-builder-0.9.3 → django_advanced_report_builder-0.9.4}/advanced_report_builder/static/advanced_report_builder/query_builder/css/query-builder.dark.css +0 -0
- {django-advanced-report-builder-0.9.3 → django_advanced_report_builder-0.9.4}/advanced_report_builder/static/advanced_report_builder/query_builder/css/query-builder.dark.min.css +0 -0
- {django-advanced-report-builder-0.9.3 → django_advanced_report_builder-0.9.4}/advanced_report_builder/static/advanced_report_builder/query_builder/css/query-builder.default.css +0 -0
- {django-advanced-report-builder-0.9.3 → django_advanced_report_builder-0.9.4}/advanced_report_builder/static/advanced_report_builder/query_builder/css/query-builder.default.min.css +0 -0
- {django-advanced-report-builder-0.9.3 → django_advanced_report_builder-0.9.4}/advanced_report_builder/static/advanced_report_builder/query_builder/i18n/query-builder.ar.js +0 -0
- {django-advanced-report-builder-0.9.3 → django_advanced_report_builder-0.9.4}/advanced_report_builder/static/advanced_report_builder/query_builder/i18n/query-builder.az.js +0 -0
- {django-advanced-report-builder-0.9.3 → django_advanced_report_builder-0.9.4}/advanced_report_builder/static/advanced_report_builder/query_builder/i18n/query-builder.bg.js +0 -0
- {django-advanced-report-builder-0.9.3 → django_advanced_report_builder-0.9.4}/advanced_report_builder/static/advanced_report_builder/query_builder/i18n/query-builder.cs.js +0 -0
- {django-advanced-report-builder-0.9.3 → django_advanced_report_builder-0.9.4}/advanced_report_builder/static/advanced_report_builder/query_builder/i18n/query-builder.da.js +0 -0
- {django-advanced-report-builder-0.9.3 → django_advanced_report_builder-0.9.4}/advanced_report_builder/static/advanced_report_builder/query_builder/i18n/query-builder.de.js +0 -0
- {django-advanced-report-builder-0.9.3 → django_advanced_report_builder-0.9.4}/advanced_report_builder/static/advanced_report_builder/query_builder/i18n/query-builder.el.js +0 -0
- {django-advanced-report-builder-0.9.3 → django_advanced_report_builder-0.9.4}/advanced_report_builder/static/advanced_report_builder/query_builder/i18n/query-builder.en.js +0 -0
- {django-advanced-report-builder-0.9.3 → django_advanced_report_builder-0.9.4}/advanced_report_builder/static/advanced_report_builder/query_builder/i18n/query-builder.es.js +0 -0
- {django-advanced-report-builder-0.9.3 → django_advanced_report_builder-0.9.4}/advanced_report_builder/static/advanced_report_builder/query_builder/i18n/query-builder.fa-IR.js +0 -0
- {django-advanced-report-builder-0.9.3 → django_advanced_report_builder-0.9.4}/advanced_report_builder/static/advanced_report_builder/query_builder/i18n/query-builder.fr.js +0 -0
- {django-advanced-report-builder-0.9.3 → django_advanced_report_builder-0.9.4}/advanced_report_builder/static/advanced_report_builder/query_builder/i18n/query-builder.he.js +0 -0
- {django-advanced-report-builder-0.9.3 → django_advanced_report_builder-0.9.4}/advanced_report_builder/static/advanced_report_builder/query_builder/i18n/query-builder.it.js +0 -0
- {django-advanced-report-builder-0.9.3 → django_advanced_report_builder-0.9.4}/advanced_report_builder/static/advanced_report_builder/query_builder/i18n/query-builder.nl.js +0 -0
- {django-advanced-report-builder-0.9.3 → django_advanced_report_builder-0.9.4}/advanced_report_builder/static/advanced_report_builder/query_builder/i18n/query-builder.no.js +0 -0
- {django-advanced-report-builder-0.9.3 → django_advanced_report_builder-0.9.4}/advanced_report_builder/static/advanced_report_builder/query_builder/i18n/query-builder.pl.js +0 -0
- {django-advanced-report-builder-0.9.3 → django_advanced_report_builder-0.9.4}/advanced_report_builder/static/advanced_report_builder/query_builder/i18n/query-builder.pt-BR.js +0 -0
- {django-advanced-report-builder-0.9.3 → django_advanced_report_builder-0.9.4}/advanced_report_builder/static/advanced_report_builder/query_builder/i18n/query-builder.pt-PT.js +0 -0
- {django-advanced-report-builder-0.9.3 → django_advanced_report_builder-0.9.4}/advanced_report_builder/static/advanced_report_builder/query_builder/i18n/query-builder.ro.js +0 -0
- {django-advanced-report-builder-0.9.3 → django_advanced_report_builder-0.9.4}/advanced_report_builder/static/advanced_report_builder/query_builder/i18n/query-builder.ru.js +0 -0
- {django-advanced-report-builder-0.9.3 → django_advanced_report_builder-0.9.4}/advanced_report_builder/static/advanced_report_builder/query_builder/i18n/query-builder.sq.js +0 -0
- {django-advanced-report-builder-0.9.3 → django_advanced_report_builder-0.9.4}/advanced_report_builder/static/advanced_report_builder/query_builder/i18n/query-builder.tr.js +0 -0
- {django-advanced-report-builder-0.9.3 → django_advanced_report_builder-0.9.4}/advanced_report_builder/static/advanced_report_builder/query_builder/i18n/query-builder.ua.js +0 -0
- {django-advanced-report-builder-0.9.3 → django_advanced_report_builder-0.9.4}/advanced_report_builder/static/advanced_report_builder/query_builder/i18n/query-builder.zh-CN.js +0 -0
- {django-advanced-report-builder-0.9.3 → django_advanced_report_builder-0.9.4}/advanced_report_builder/static/advanced_report_builder/query_builder/js/.DS_Store +0 -0
- {django-advanced-report-builder-0.9.3 → django_advanced_report_builder-0.9.4}/advanced_report_builder/static/advanced_report_builder/query_builder/js/plugins/.DS_Store +0 -0
- {django-advanced-report-builder-0.9.3 → django_advanced_report_builder-0.9.4}/advanced_report_builder/static/advanced_report_builder/query_builder/js/plugins/currency/plugin.js +0 -0
- {django-advanced-report-builder-0.9.3 → django_advanced_report_builder-0.9.4}/advanced_report_builder/static/advanced_report_builder/query_builder/js/query-builder.js +0 -0
- {django-advanced-report-builder-0.9.3 → django_advanced_report_builder-0.9.4}/advanced_report_builder/static/advanced_report_builder/query_builder/js/query-builder.min.js +0 -0
- {django-advanced-report-builder-0.9.3 → django_advanced_report_builder-0.9.4}/advanced_report_builder/static/advanced_report_builder/query_builder/js/query-builder.standalone.js +0 -0
- {django-advanced-report-builder-0.9.3 → django_advanced_report_builder-0.9.4}/advanced_report_builder/static/advanced_report_builder/query_builder/js/query-builder.standalone.min.js +0 -0
- {django-advanced-report-builder-0.9.3 → django_advanced_report_builder-0.9.4}/advanced_report_builder/static/advanced_report_builder/query_builder/scss/.DS_Store +0 -0
- {django-advanced-report-builder-0.9.3 → django_advanced_report_builder-0.9.4}/advanced_report_builder/static/advanced_report_builder/query_builder/scss/dark.scss +0 -0
- {django-advanced-report-builder-0.9.3 → django_advanced_report_builder-0.9.4}/advanced_report_builder/static/advanced_report_builder/query_builder/scss/default.scss +0 -0
- {django-advanced-report-builder-0.9.3 → django_advanced_report_builder-0.9.4}/advanced_report_builder/static/advanced_report_builder/query_builder/scss/plugins/_bt-checkbox.scss +0 -0
- {django-advanced-report-builder-0.9.3 → django_advanced_report_builder-0.9.4}/advanced_report_builder/static/advanced_report_builder/query_builder/scss/plugins/_bt-tooltip-errors.scss +0 -0
- {django-advanced-report-builder-0.9.3 → django_advanced_report_builder-0.9.4}/advanced_report_builder/static/advanced_report_builder/query_builder/scss/plugins/_filter-description.scss +0 -0
- {django-advanced-report-builder-0.9.3 → django_advanced_report_builder-0.9.4}/advanced_report_builder/static/advanced_report_builder/query_builder/scss/plugins/_invert.scss +0 -0
- {django-advanced-report-builder-0.9.3 → django_advanced_report_builder-0.9.4}/advanced_report_builder/static/advanced_report_builder/query_builder/scss/plugins/_sortable.scss +0 -0
- {django-advanced-report-builder-0.9.3 → django_advanced_report_builder-0.9.4}/advanced_report_builder/static/advanced_report_builder/query_builder/scss/plugins/bt-tooltip-errors.scss +0 -0
- {django-advanced-report-builder-0.9.3 → django_advanced_report_builder-0.9.4}/advanced_report_builder/static/advanced_report_builder/query_builder/scss/plugins/filter-description.scss +0 -0
- {django-advanced-report-builder-0.9.3 → django_advanced_report_builder-0.9.4}/advanced_report_builder/static/advanced_report_builder/query_builder/scss/plugins/invert.scss +0 -0
- {django-advanced-report-builder-0.9.3 → django_advanced_report_builder-0.9.4}/advanced_report_builder/static/advanced_report_builder/query_builder/scss/plugins/sortable.scss +0 -0
- {django-advanced-report-builder-0.9.3 → django_advanced_report_builder-0.9.4}/advanced_report_builder/templates/advanced_report_builder/charts/bar/middle.html +0 -0
- {django-advanced-report-builder-0.9.3 → django_advanced_report_builder-0.9.4}/advanced_report_builder/templates/advanced_report_builder/charts/funnel/middle.html +0 -0
- {django-advanced-report-builder-0.9.3 → django_advanced_report_builder-0.9.4}/advanced_report_builder/templates/advanced_report_builder/charts/funnel/report.html +0 -0
- {django-advanced-report-builder-0.9.3 → django_advanced_report_builder-0.9.4}/advanced_report_builder/templates/advanced_report_builder/charts/line/middle.html +0 -0
- {django-advanced-report-builder-0.9.3 → django_advanced_report_builder-0.9.4}/advanced_report_builder/templates/advanced_report_builder/charts/modal.html +0 -0
- {django-advanced-report-builder-0.9.3 → django_advanced_report_builder-0.9.4}/advanced_report_builder/templates/advanced_report_builder/charts/modal_field.html +0 -0
- {django-advanced-report-builder-0.9.3 → django_advanced_report_builder-0.9.4}/advanced_report_builder/templates/advanced_report_builder/charts/pie/middle.html +0 -0
- {django-advanced-report-builder-0.9.3 → django_advanced_report_builder-0.9.4}/advanced_report_builder/templates/advanced_report_builder/charts/report.html +0 -0
- {django-advanced-report-builder-0.9.3 → django_advanced_report_builder-0.9.4}/advanced_report_builder/templates/advanced_report_builder/data_merge/data_merge.html +0 -0
- {django-advanced-report-builder-0.9.3 → django_advanced_report_builder-0.9.4}/advanced_report_builder/templates/advanced_report_builder/datatables/fields/modal.html +0 -0
- {django-advanced-report-builder-0.9.3 → django_advanced_report_builder-0.9.4}/advanced_report_builder/templates/advanced_report_builder/datatables/fields/single_query_builder.html +0 -0
- {django-advanced-report-builder-0.9.3 → django_advanced_report_builder-0.9.4}/advanced_report_builder/templates/advanced_report_builder/datatables/modal.html +0 -0
- {django-advanced-report-builder-0.9.3 → django_advanced_report_builder-0.9.4}/advanced_report_builder/templates/advanced_report_builder/datatables/onclick_menu.html +0 -0
- {django-advanced-report-builder-0.9.3 → django_advanced_report_builder-0.9.4}/advanced_report_builder/templates/advanced_report_builder/datatables/report.html +0 -0
- {django-advanced-report-builder-0.9.3 → django_advanced_report_builder-0.9.4}/advanced_report_builder/templates/advanced_report_builder/datatables/select_pivot.html +0 -0
- {django-advanced-report-builder-0.9.3 → django_advanced_report_builder-0.9.4}/advanced_report_builder/templates/advanced_report_builder/kanban/description_modal.html +0 -0
- {django-advanced-report-builder-0.9.3 → django_advanced_report_builder-0.9.4}/advanced_report_builder/templates/advanced_report_builder/kanban/middle.html +0 -0
- {django-advanced-report-builder-0.9.3 → django_advanced_report_builder-0.9.4}/advanced_report_builder/templates/advanced_report_builder/kanban/modal.html +0 -0
- {django-advanced-report-builder-0.9.3 → django_advanced_report_builder-0.9.4}/advanced_report_builder/templates/advanced_report_builder/kanban/report.html +0 -0
- {django-advanced-report-builder-0.9.3 → django_advanced_report_builder-0.9.4}/advanced_report_builder/templates/advanced_report_builder/query_builder.html +0 -0
- {django-advanced-report-builder-0.9.3 → django_advanced_report_builder-0.9.4}/advanced_report_builder/templates/advanced_report_builder/query_modal.html +0 -0
- {django-advanced-report-builder-0.9.3 → django_advanced_report_builder-0.9.4}/advanced_report_builder/templates/advanced_report_builder/select_column.html +0 -0
- {django-advanced-report-builder-0.9.3 → django_advanced_report_builder-0.9.4}/advanced_report_builder/templates/advanced_report_builder/single_values/middle.html +0 -0
- {django-advanced-report-builder-0.9.3 → django_advanced_report_builder-0.9.4}/advanced_report_builder/templates/advanced_report_builder/single_values/modal.html +0 -0
- {django-advanced-report-builder-0.9.3 → django_advanced_report_builder-0.9.4}/advanced_report_builder/templates/advanced_report_builder/single_values/report.html +0 -0
- {django-advanced-report-builder-0.9.3 → django_advanced_report_builder-0.9.4}/advanced_report_builder/toggle.py +0 -0
- {django-advanced-report-builder-0.9.3 → django_advanced_report_builder-0.9.4}/advanced_report_builder/urls.py +0 -0
- {django-advanced-report-builder-0.9.3 → django_advanced_report_builder-0.9.4}/advanced_report_builder/utils.py +0 -0
- {django-advanced-report-builder-0.9.3 → django_advanced_report_builder-0.9.4}/advanced_report_builder/variable_date.py +0 -0
- {django-advanced-report-builder-0.9.3 → django_advanced_report_builder-0.9.4}/advanced_report_builder/views/.DS_Store +0 -0
- {django-advanced-report-builder-0.9.3 → django_advanced_report_builder-0.9.4}/advanced_report_builder/views/__init__.py +0 -0
- {django-advanced-report-builder-0.9.3 → django_advanced_report_builder-0.9.4}/advanced_report_builder/views/bar_charts.py +0 -0
- {django-advanced-report-builder-0.9.3 → django_advanced_report_builder-0.9.4}/advanced_report_builder/views/charts_base.py +0 -0
- {django-advanced-report-builder-0.9.3 → django_advanced_report_builder-0.9.4}/advanced_report_builder/views/custom.py +0 -0
- {django-advanced-report-builder-0.9.3 → django_advanced_report_builder-0.9.4}/advanced_report_builder/views/dashboard.py +0 -0
- {django-advanced-report-builder-0.9.3 → django_advanced_report_builder-0.9.4}/advanced_report_builder/views/datatables/__init__.py +0 -0
- {django-advanced-report-builder-0.9.3 → django_advanced_report_builder-0.9.4}/advanced_report_builder/views/datatables/datatables.py +0 -0
- {django-advanced-report-builder-0.9.3 → django_advanced_report_builder-0.9.4}/advanced_report_builder/views/funnel_charts.py +0 -0
- {django-advanced-report-builder-0.9.3 → django_advanced_report_builder-0.9.4}/advanced_report_builder/views/helpers.py +0 -0
- {django-advanced-report-builder-0.9.3 → django_advanced_report_builder-0.9.4}/advanced_report_builder/views/kanban.py +0 -0
- {django-advanced-report-builder-0.9.3 → django_advanced_report_builder-0.9.4}/advanced_report_builder/views/line_charts.py +0 -0
- {django-advanced-report-builder-0.9.3 → django_advanced_report_builder-0.9.4}/advanced_report_builder/views/modals_base.py +0 -0
- {django-advanced-report-builder-0.9.3 → django_advanced_report_builder-0.9.4}/advanced_report_builder/views/pie_charts.py +0 -0
- {django-advanced-report-builder-0.9.3 → django_advanced_report_builder-0.9.4}/advanced_report_builder/views/query_modal/__init__.py +0 -0
- {django-advanced-report-builder-0.9.3 → django_advanced_report_builder-0.9.4}/advanced_report_builder/views/query_modal/mixin.py +0 -0
- {django-advanced-report-builder-0.9.3 → django_advanced_report_builder-0.9.4}/advanced_report_builder/views/query_modal/modal.py +0 -0
- {django-advanced-report-builder-0.9.3 → django_advanced_report_builder-0.9.4}/advanced_report_builder/views/report.py +0 -0
- {django-advanced-report-builder-0.9.3 → django_advanced_report_builder-0.9.4}/advanced_report_builder/views/reports.py +0 -0
- {django-advanced-report-builder-0.9.3 → django_advanced_report_builder-0.9.4}/advanced_report_builder/views/single_values.py +0 -0
- {django-advanced-report-builder-0.9.3 → django_advanced_report_builder-0.9.4}/advanced_report_builder/views/targets/__init__.py +0 -0
- {django-advanced-report-builder-0.9.3 → django_advanced_report_builder-0.9.4}/advanced_report_builder/views/targets/utils.py +0 -0
- {django-advanced-report-builder-0.9.3 → django_advanced_report_builder-0.9.4}/advanced_report_builder/views/targets/views.py +0 -0
- {django-advanced-report-builder-0.9.3 → django_advanced_report_builder-0.9.4}/django_advanced_report_builder.egg-info/SOURCES.txt +0 -0
- {django-advanced-report-builder-0.9.3 → django_advanced_report_builder-0.9.4}/django_advanced_report_builder.egg-info/dependency_links.txt +0 -0
- {django-advanced-report-builder-0.9.3 → django_advanced_report_builder-0.9.4}/django_advanced_report_builder.egg-info/requires.txt +0 -0
- {django-advanced-report-builder-0.9.3 → django_advanced_report_builder-0.9.4}/django_advanced_report_builder.egg-info/top_level.txt +0 -0
- {django-advanced-report-builder-0.9.3 → django_advanced_report_builder-0.9.4}/setup.cfg +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
Metadata-Version: 2.
|
|
1
|
+
Metadata-Version: 2.4
|
|
2
2
|
Name: django-advanced-report-builder
|
|
3
|
-
Version: 0.9.
|
|
3
|
+
Version: 0.9.4
|
|
4
4
|
Summary: Django app that allows you to build reports from modals
|
|
5
5
|
Home-page: https://github.com/django-advance-utils/django-advanced-report-builder
|
|
6
6
|
Author: Thomas Turner
|
|
@@ -10,6 +10,21 @@ Classifier: Operating System :: OS Independent
|
|
|
10
10
|
Requires-Python: >=3.6
|
|
11
11
|
Description-Content-Type: text/markdown
|
|
12
12
|
License-File: LICENSE
|
|
13
|
+
Requires-Dist: Django>=3.2
|
|
14
|
+
Requires-Dist: django-filtered-datatables>=0.0.21
|
|
15
|
+
Requires-Dist: django-ajax-helpers>=0.0.20
|
|
16
|
+
Requires-Dist: django-nested-modals>=0.0.21
|
|
17
|
+
Requires-Dist: time-stamped-model>=0.2.3
|
|
18
|
+
Requires-Dist: date-offset>=0.0.2
|
|
19
|
+
Dynamic: author
|
|
20
|
+
Dynamic: classifier
|
|
21
|
+
Dynamic: description
|
|
22
|
+
Dynamic: description-content-type
|
|
23
|
+
Dynamic: home-page
|
|
24
|
+
Dynamic: license-file
|
|
25
|
+
Dynamic: requires-dist
|
|
26
|
+
Dynamic: requires-python
|
|
27
|
+
Dynamic: summary
|
|
13
28
|
|
|
14
29
|
[](https://badge.fury.io/py/django-advanced-report-builder)
|
|
15
30
|
|
|
@@ -31,7 +31,7 @@ from advanced_report_builder.globals import (
|
|
|
31
31
|
REVERSE_FOREIGN_KEY_ANNOTATION_BOOLEAN_CHOICES,
|
|
32
32
|
REVERSE_FOREIGN_KEY_DELIMITER_CHOICES,
|
|
33
33
|
REVERSE_FOREIGN_KEY_ANNOTATION_DATE_CHOICES,
|
|
34
|
-
REVERSE_FOREIGN_KEY_ANNOTATION_DATE_ARRAY,
|
|
34
|
+
REVERSE_FOREIGN_KEY_ANNOTATION_DATE_ARRAY, ALIGNMENT_CHOICE_RIGHT,
|
|
35
35
|
)
|
|
36
36
|
from advanced_report_builder.models import TableReport, ReportType
|
|
37
37
|
from advanced_report_builder.toggle import RBToggle
|
|
@@ -311,6 +311,8 @@ class TableFieldForm(ChartBaseFieldForm):
|
|
|
311
311
|
self.fields['annotations_type'] = ChoiceField(choices=[(0, '-----')] + ANNOTATIONS_CHOICES, required=False)
|
|
312
312
|
if 'annotations_type' in data_attr:
|
|
313
313
|
self.fields['annotations_type'].initial = data_attr['annotations_type']
|
|
314
|
+
else:
|
|
315
|
+
self.fields['alignment'].initial = ALIGNMENT_CHOICE_RIGHT
|
|
314
316
|
|
|
315
317
|
annotation_column_help_text = 'Not required however useful for mathematical columns.'
|
|
316
318
|
self.fields['annotation_column_id'] = CharField(required=False, help_text=annotation_column_help_text)
|
|
@@ -324,6 +326,8 @@ class TableFieldForm(ChartBaseFieldForm):
|
|
|
324
326
|
self.fields['alignment'] = ChoiceField(choices=ALIGNMENT_CHOICES, required=False)
|
|
325
327
|
if 'alignment' in data_attr:
|
|
326
328
|
self.fields['alignment'].initial = data_attr['alignment']
|
|
329
|
+
else:
|
|
330
|
+
self.fields['alignment'].initial = ALIGNMENT_CHOICE_RIGHT
|
|
327
331
|
self.fields['has_filter'] = BooleanField(required=False, widget=RBToggle())
|
|
328
332
|
|
|
329
333
|
self.fields['filter'] = CharField(required=False)
|
|
@@ -454,6 +458,8 @@ class TableFieldForm(ChartBaseFieldForm):
|
|
|
454
458
|
self.fields['alignment'] = ChoiceField(choices=ALIGNMENT_CHOICES, required=False)
|
|
455
459
|
if 'alignment' in data_attr:
|
|
456
460
|
self.fields['alignment'].initial = data_attr['alignment']
|
|
461
|
+
else:
|
|
462
|
+
self.fields['alignment'].initial = ALIGNMENT_CHOICE_RIGHT
|
|
457
463
|
|
|
458
464
|
self.fields['decimal_places'] = IntegerField()
|
|
459
465
|
self.fields['decimal_places'].initial = int(data_attr.get('decimal_places', 0))
|
|
@@ -522,14 +528,15 @@ class TableFieldForm(ChartBaseFieldForm):
|
|
|
522
528
|
self.fields['alignment'] = ChoiceField(choices=ALIGNMENT_CHOICES, required=False)
|
|
523
529
|
if 'alignment' in data_attr:
|
|
524
530
|
self.fields['alignment'].initial = data_attr['alignment']
|
|
531
|
+
else:
|
|
532
|
+
self.fields['alignment'].initial = ALIGNMENT_CHOICE_RIGHT
|
|
525
533
|
|
|
526
534
|
def save_mathematical_fields(self, data, attributes):
|
|
527
535
|
if self.cleaned_data['hidden']:
|
|
528
536
|
attributes.append('hidden-1')
|
|
529
537
|
|
|
530
538
|
alignment = self.cleaned_data.get('alignment')
|
|
531
|
-
|
|
532
|
-
attributes.append(f'alignment-{alignment}')
|
|
539
|
+
attributes.append(f'alignment-{alignment}')
|
|
533
540
|
if self.cleaned_data['column_id']:
|
|
534
541
|
b64_column_id = encode_attribute(self.cleaned_data['column_id'])
|
|
535
542
|
attributes.append(f'column_id-{b64_column_id}')
|
|
@@ -561,8 +568,7 @@ class TableFieldForm(ChartBaseFieldForm):
|
|
|
561
568
|
|
|
562
569
|
def save_number_fields(self, attributes):
|
|
563
570
|
alignment = self.cleaned_data.get('alignment')
|
|
564
|
-
|
|
565
|
-
attributes.append(f'alignment-{alignment}')
|
|
571
|
+
attributes.append(f'alignment-{alignment}')
|
|
566
572
|
if 'annotations_type' in self.cleaned_data and int(self.cleaned_data['annotations_type']) != 0:
|
|
567
573
|
attributes.append(f'annotations_type-{self.cleaned_data["annotations_type"]}')
|
|
568
574
|
elif 'append_annotation_query' in self.cleaned_data and self.cleaned_data['append_annotation_query']:
|
|
@@ -584,8 +590,7 @@ class TableFieldForm(ChartBaseFieldForm):
|
|
|
584
590
|
|
|
585
591
|
def save_currency_fields(self, attributes):
|
|
586
592
|
alignment = self.cleaned_data.get('alignment')
|
|
587
|
-
|
|
588
|
-
attributes.append(f'alignment-{alignment}')
|
|
593
|
+
attributes.append(f'alignment-{alignment}')
|
|
589
594
|
if 'annotations_type' in self.cleaned_data and int(self.cleaned_data['annotations_type']) != 0:
|
|
590
595
|
attributes.append(f'annotations_type-{self.cleaned_data["annotations_type"]}')
|
|
591
596
|
elif 'append_annotation_query' in self.cleaned_data and self.cleaned_data['append_annotation_query']:
|
|
@@ -21,7 +21,7 @@ from advanced_report_builder.globals import (
|
|
|
21
21
|
ALIGNMENT_CLASS,
|
|
22
22
|
REVERSE_FOREIGN_KEY_DELIMITER_COMMA,
|
|
23
23
|
REVERSE_FOREIGN_KEY_ANNOTATION_BOOLEAN_XOR,
|
|
24
|
-
DATE_FORMAT_TYPE_DD_MM_YY_SLASH, ANNOTATION_CHOICE_NA,
|
|
24
|
+
DATE_FORMAT_TYPE_DD_MM_YY_SLASH, ANNOTATION_CHOICE_NA, ALIGNMENT_CHOICE_RIGHT,
|
|
25
25
|
)
|
|
26
26
|
from advanced_report_builder.globals import (
|
|
27
27
|
DATE_FORMAT_TYPES_DJANGO_FORMAT,
|
|
@@ -509,7 +509,7 @@ class TableUtilsMixin(ReportUtilsMixin):
|
|
|
509
509
|
expression = ExpressionWrapper(NullIf(F(values[0]) * 100.00, 0) / F(values[1]), output_field=FloatField())
|
|
510
510
|
decimal_places = data_attr.get('decimal_places', 2)
|
|
511
511
|
field_attr['decimal_places'] = int(decimal_places)
|
|
512
|
-
alignment_class = ALIGNMENT_CLASS.get(int(data_attr.get('alignment',
|
|
512
|
+
alignment_class = ALIGNMENT_CLASS.get(int(data_attr.get('alignment', ALIGNMENT_CHOICE_RIGHT)))
|
|
513
513
|
field_attr['options'] = {}
|
|
514
514
|
field = table_field['field']
|
|
515
515
|
|
|
@@ -558,7 +558,7 @@ class TableUtilsMixin(ReportUtilsMixin):
|
|
|
558
558
|
expression,
|
|
559
559
|
):
|
|
560
560
|
decimal_places = data_attr.get('decimal_places', 2)
|
|
561
|
-
alignment_class = ALIGNMENT_CLASS.get(int(data_attr.get('alignment',
|
|
561
|
+
alignment_class = ALIGNMENT_CLASS.get(int(data_attr.get('alignment', ALIGNMENT_CHOICE_RIGHT)))
|
|
562
562
|
field_attr['decimal_places'] = int(decimal_places)
|
|
563
563
|
field_attr['options'] = {}
|
|
564
564
|
field = table_field['field']
|
|
@@ -12,12 +12,13 @@ from advanced_report_builder.columns import (
|
|
|
12
12
|
ReportBuilderCurrencyColumn,
|
|
13
13
|
ReportBuilderNumberColumn,
|
|
14
14
|
)
|
|
15
|
+
from advanced_report_builder.exceptions import ReportError
|
|
15
16
|
from advanced_report_builder.field_utils import ReportBuilderFieldUtils
|
|
16
17
|
from advanced_report_builder.filter_query import FilterQueryMixin
|
|
17
18
|
from advanced_report_builder.globals import (
|
|
18
19
|
ANNOTATION_FUNCTIONS,
|
|
19
20
|
ANNOTATION_CHOICE_COUNT,
|
|
20
|
-
ALIGNMENT_CLASS, ANNOTATION_CHOICE_NA,
|
|
21
|
+
ALIGNMENT_CLASS, ANNOTATION_CHOICE_NA, ALIGNMENT_CHOICE_RIGHT,
|
|
21
22
|
)
|
|
22
23
|
from advanced_report_builder.utils import decode_attribute
|
|
23
24
|
|
|
@@ -46,11 +47,11 @@ class ReportUtilsMixin(ReportBuilderFieldUtils, FilterQueryMixin):
|
|
|
46
47
|
):
|
|
47
48
|
|
|
48
49
|
field_name = table_field['field']
|
|
49
|
-
alignment_class = ALIGNMENT_CLASS.get(int(data_attr.get('alignment',
|
|
50
|
+
alignment_class = ALIGNMENT_CLASS.get(int(data_attr.get('alignment', ALIGNMENT_CHOICE_RIGHT)))
|
|
50
51
|
new_field_name = field_name
|
|
51
52
|
css_class = None
|
|
52
53
|
annotation_filter = None
|
|
53
|
-
if annotations_type !=
|
|
54
|
+
if annotations_type != ANNOTATION_CHOICE_NA or append_annotation_query:
|
|
54
55
|
b64_filter = data_attr.get('filter')
|
|
55
56
|
if b64_filter:
|
|
56
57
|
_filter = decode_attribute(b64_filter)
|
|
@@ -90,8 +91,13 @@ class ReportUtilsMixin(ReportBuilderFieldUtils, FilterQueryMixin):
|
|
|
90
91
|
field.title = title
|
|
91
92
|
|
|
92
93
|
field = copy.deepcopy(field)
|
|
93
|
-
|
|
94
|
-
|
|
94
|
+
|
|
95
|
+
current_annotations = getattr(field.annotations[field_name], 'filter', None)
|
|
96
|
+
# assert False, field.annotations[field_name]
|
|
97
|
+
if current_annotations is None:
|
|
98
|
+
raise ReportError(f'Sorry unable to annotate {field_name}. The query is to complex to modify.')
|
|
99
|
+
# field.annotations[field_name].expression is where the query is!
|
|
100
|
+
elif annotation_filter is not None and len(annotation_filter) > 0:
|
|
95
101
|
new_annotations = current_annotations & annotation_filter
|
|
96
102
|
field.annotations[field_name].filter = new_annotations
|
|
97
103
|
new_field_name = f'{field_name}_{index}'
|
|
@@ -99,21 +105,7 @@ class ReportUtilsMixin(ReportBuilderFieldUtils, FilterQueryMixin):
|
|
|
99
105
|
field.field = new_field_name
|
|
100
106
|
field_name = new_field_name
|
|
101
107
|
|
|
102
|
-
|
|
103
|
-
if not self.use_annotations:
|
|
104
|
-
field.options['calculated'] = True
|
|
105
|
-
field.aggregations = col_type_override.annotations
|
|
106
|
-
field.annotations = []
|
|
107
|
-
if title:
|
|
108
|
-
field.title = title
|
|
109
|
-
self.set_extra_number_field_kwargs(
|
|
110
|
-
data_attr=data_attr,
|
|
111
|
-
options=field.options,
|
|
112
|
-
multiple_index=multiple_index,
|
|
113
|
-
additional_options=additional_options,
|
|
114
|
-
)
|
|
115
|
-
|
|
116
|
-
elif annotations_type == ANNOTATION_CHOICE_COUNT:
|
|
108
|
+
if annotations_type == ANNOTATION_CHOICE_COUNT:
|
|
117
109
|
new_field_name = self.get_new_annotation_field_name(
|
|
118
110
|
annotations_type=annotations_type,
|
|
119
111
|
field_name=field_name,
|
|
@@ -150,17 +142,29 @@ class ReportUtilsMixin(ReportBuilderFieldUtils, FilterQueryMixin):
|
|
|
150
142
|
number_function_kwargs.update({'field': new_field_name, 'column_name': new_field_name})
|
|
151
143
|
field = self.number_field(**number_function_kwargs)
|
|
152
144
|
else:
|
|
153
|
-
|
|
154
145
|
css_class = field.column_defs.get('className')
|
|
155
146
|
if css_class is None:
|
|
156
147
|
css_class = alignment_class
|
|
157
148
|
else:
|
|
158
149
|
css_class += ' ' + alignment_class
|
|
159
150
|
field.column_defs['className'] = css_class
|
|
160
|
-
|
|
161
151
|
if title:
|
|
162
152
|
field.title = title
|
|
163
|
-
if
|
|
153
|
+
if field.annotations:
|
|
154
|
+
if not self.use_annotations:
|
|
155
|
+
field.options['calculated'] = True
|
|
156
|
+
field.aggregations = col_type_override.annotations
|
|
157
|
+
field.annotations = []
|
|
158
|
+
if title:
|
|
159
|
+
field.title = title
|
|
160
|
+
|
|
161
|
+
self.set_extra_number_field_kwargs(
|
|
162
|
+
data_attr=data_attr,
|
|
163
|
+
options=field.options,
|
|
164
|
+
multiple_index=multiple_index,
|
|
165
|
+
additional_options=additional_options,
|
|
166
|
+
)
|
|
167
|
+
elif annotations_type != ANNOTATION_CHOICE_NA:
|
|
164
168
|
new_field_name = self.get_new_annotation_field_name(
|
|
165
169
|
annotations_type=annotations_type,
|
|
166
170
|
field_name=field_name,
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
Metadata-Version: 2.
|
|
1
|
+
Metadata-Version: 2.4
|
|
2
2
|
Name: django-advanced-report-builder
|
|
3
|
-
Version: 0.9.
|
|
3
|
+
Version: 0.9.4
|
|
4
4
|
Summary: Django app that allows you to build reports from modals
|
|
5
5
|
Home-page: https://github.com/django-advance-utils/django-advanced-report-builder
|
|
6
6
|
Author: Thomas Turner
|
|
@@ -10,6 +10,21 @@ Classifier: Operating System :: OS Independent
|
|
|
10
10
|
Requires-Python: >=3.6
|
|
11
11
|
Description-Content-Type: text/markdown
|
|
12
12
|
License-File: LICENSE
|
|
13
|
+
Requires-Dist: Django>=3.2
|
|
14
|
+
Requires-Dist: django-filtered-datatables>=0.0.21
|
|
15
|
+
Requires-Dist: django-ajax-helpers>=0.0.20
|
|
16
|
+
Requires-Dist: django-nested-modals>=0.0.21
|
|
17
|
+
Requires-Dist: time-stamped-model>=0.2.3
|
|
18
|
+
Requires-Dist: date-offset>=0.0.2
|
|
19
|
+
Dynamic: author
|
|
20
|
+
Dynamic: classifier
|
|
21
|
+
Dynamic: description
|
|
22
|
+
Dynamic: description-content-type
|
|
23
|
+
Dynamic: home-page
|
|
24
|
+
Dynamic: license-file
|
|
25
|
+
Dynamic: requires-dist
|
|
26
|
+
Dynamic: requires-python
|
|
27
|
+
Dynamic: summary
|
|
13
28
|
|
|
14
29
|
[](https://badge.fury.io/py/django-advanced-report-builder)
|
|
15
30
|
|
|
@@ -5,7 +5,7 @@ with open("README.md", "r") as fh:
|
|
|
5
5
|
|
|
6
6
|
setuptools.setup(
|
|
7
7
|
name="django-advanced-report-builder",
|
|
8
|
-
version="0.9.
|
|
8
|
+
version="0.9.4",
|
|
9
9
|
author="Thomas Turner",
|
|
10
10
|
description="Django app that allows you to build reports from modals",
|
|
11
11
|
long_description=long_description,
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|