Commit Graph

211 Commits

Author SHA1 Message Date
a9215511ac # 86 Proper log detail
* adds support for payment adding/deleting to intervention log
* adds support for deduction adding/deleting to intervention/ecoaccount log
* improves code snippets
* drops add_deduction() methods for ecoaccount and intervention in favor of simpler creation in NewDeductionModalForm
* adds messages
* adds/updates translations
2022-02-02 15:16:25 +01:00
874b266352 # 86 Visual improvements
* moves message rendering directly below navigation menu for a more closed look
* reworks message rendering on before_states and after_states for all compensation related datatypes
* reworks layout of action column on all related data card tables
* resizes certain attribute layouts on related data card tables
* reworks layout of details on CompensationState and CompensationAction rendering from own column into subgrouped placement of main type info
* drops align-middle placement for all related data card table contents
2022-02-02 14:18:44 +01:00
77b59db56f # 86 Comment field length
* removes comment field length limit
* adds improvements for rendering large comments
2022-02-02 12:54:45 +01:00
d5e23b420e # 86 Viewport jump EcoAccount/EMA
* adds direct jump of viewport on related-data action (create/delete)
2022-02-02 11:26:02 +01:00
7028672b93 # 86 Viewport jump Intervention
* adds direct jump of viewport on related-data action (create/delete)
2022-02-02 09:32:34 +01:00
509533477a # Migrations
initial migrations commit
2022-02-02 08:46:08 +01:00
5b0b376405 #99 Admin backend cleanup
* removes admin backend views which are not important for production
* adds filtering functionalities on index views
* simplifies detail views on intervention, compensation, ecoaccount and ema
* adds autocomplete fields on detail views
* adds handy horizontal filter fields on detail views
2022-02-01 18:41:02 +01:00
8979149e56 # 89 Ecoaccount recorded state reset (fix)
* fixes bug where recorded state of eco account has been reset, if a deduction is created from the detail view of the ecoaccount itself
2022-01-31 10:14:46 +01:00
cbf871f4b4 #31 API Deductions Tests
* adds tests for deduction API
2022-01-28 16:21:23 +01:00
80896731a8 #31 API Tests
* adds creation tests with minimum data for intervention, compensation, ema and ecoaccount
* fixes bug where empty geometry would not be created properly using the API
* reworks key fetching from POST data, so inproperly stated keys will lead to an error for the API user, instead of silently working and use default data
* adds some logical checks for deductable_surface of eco account creation using api
* fixes bug that would have occured on creating compensations via api
2022-01-27 17:09:38 +01:00
c9bccec1a5 #31 API Frontend token generating
* adds frontend settings for users to create API tokens on their user settings
2022-01-27 11:37:38 +01:00
0b723b1529 #31 API WIP
* adds support for GET /check on intervention to run checks automatically via API
2022-01-25 09:29:14 +01:00
884aaca0b3 # 83 Publication rework interventions
* adds abstract is_ready_for_publish method to PublishableObjectMixin which needs to be implemented in subclasses
* adds implementation for intervention model
* adds publishable check to rendering report view
* adds/updates translations
2022-01-21 09:02:56 +01:00
77e9c989aa # 70 Tab titles interventions
* adds content related tab title
* adds/updates translations
2022-01-20 12:12:04 +01:00
ef65869c7c # 63 Refactoring
* refactors django User model to custom User model to provide further attributes and methods directly on the user model
2022-01-12 12:56:22 +01:00
07b079d1b6 # 61 General table enhancements
* enhances rendering of tables
* enhances rendering of filter section
* reorganizes table filter codes into konova/filters/ folder and splits into mixins and table_filters
2022-01-12 10:11:47 +01:00
59a541397e # 61 Filter code enhancement
* reorganizes code
2022-01-12 09:23:22 +01:00
0cb65ae720 # 61 Filter offices frontend/backend
* adds filters for registration and conservation offices
* adds SelectionTableFilter as new holder for these types of filter components
2022-01-12 08:56:49 +01:00
d8607d9ade # 61 Filter backend
* refactors XYTableFilter classes to hold query_filter and checkbox_filter which are separate instances of django_filter.FilterSets
* improves render ability for frontend
2022-01-11 15:19:16 +01:00
f92ec7fde7 # 61 Filter frontend
* optimizes minor parts of table-filter initialization and queryset passing
2022-01-11 14:28:34 +01:00
a4966751b7 # 61 Filter backend
* refactors table filters by introducing AbstractTableFilter, GeoReferencedTableFilterMixin, ShareableTableFilterMixin and RecordableTableFilterMixin
* adds full filter functionality
* refactors TableFilter inheritances for all objects
2022-01-11 12:56:27 +01:00
498f0a9bbc #57 Deduction shortcut remove
* removes deduction shortcut
* adds missing quality checks on intervention deduction accounts validity
* fixes error if checked intervention shall be checked again
* adds/updates translations
2022-01-07 15:41:40 +01:00
a09fdae58c #49 Parcels on report
* adds parcel displaying on public reports
* fixes bug in EMA where autocomplete js would not load for modal forms
* fixes bug where BaseContext cached data from last request and reused it, if not overwritten
2022-01-05 14:41:32 +01:00
49859d17d2 #49 Frontend rendering
* adds rendering for detail view
* adds new includable html snippet for parcel rendering
* refactors generic includables in konova/ app into konova/templates/includes/...
* fixes bug where parcels have been reused from the database due to wrong model structure
* adds get_underlying_parcels() for Geometry model
* adds get_underlying_parcels() for GeoReferencedMixin models
* fixes bug where missing geometry would lead to an error during geometry conflict check
* removes unused wfs attribute from AbstractWFSFetcher
* adds/updates translations
2022-01-05 14:13:26 +01:00
41af455d09 #50 Overlaying geometries KOM + OEK
* removes unused messages
* adds geometry conflict message rendering for KOM and OEK
* removes unused methods in GeoReferencedMixin
* generalizes geometrical lookup for conflicts from overlaps to intersects
2021-12-15 15:10:35 +01:00
f4541abf20 #50 Overlaying geometries
* refactors geometry field into GeoReferencedMixin, holding more handy methods and used in all models, formerly holding the geometry field
* refactors backend admin configuration, so modified, deleted and created are not editable in the backend which also skips loading of all possible choices
* fixes typo in sanitize_db command
* introduces GeometryConflict model, holding a link between two geometries, where one overlaps the other
* adds first (WIP) messages into detail views of ema and intervention for test purposes
2021-12-15 13:59:52 +01:00
8b17ab6fdc #48 Changes autocomplete
* changes the autocomplete route for user retrieving from _istartswith to full qualified check
* extends the help text for form to inform about full qualified username needed
* updates translation
2021-12-14 13:55:08 +01:00
122c9cb363 Refactors triggering checked/recorded
* refactors BaseForm request/user initialization
* introduces mark_as_edited() method for compensation models
2021-11-17 14:33:05 +01:00
4583a9f826 #35 Sanity command
* refactors "toggling" of recorded/checked state
* introduces mark_as_edited() for RecordableObjectMixin
2021-11-17 12:09:49 +01:00
96caebcae1 Refactoring
* adds simple getter methods for UserActionLogEntry
* replaces manual creation of UserActionLogEntry with new methods
2021-11-16 13:15:15 +01:00
7f43f197d5 Refactoring
* moves updating of shared access users into ShareableObjectMixin
* renames ShareInterventionModalForm to ShareModalForm since it's used for EMA and eco accounts as well
2021-11-16 12:54:28 +01:00
bd189c4a54 Refactoring
* moves updating of shared access users into Intervention
2021-11-16 12:51:10 +01:00
648bfba1bf Refactoring
* moves adding of deduction into Intervention and EcoAccount model
* hardens against circular import issues
2021-11-16 12:43:13 +01:00
dafa53451f Refactoring
* moves adding of revocation into Intervention model
2021-11-16 12:26:50 +01:00
e615a2fc01 Refactoring
* drop SSO message sending for now from the logic
2021-11-16 11:57:06 +01:00
6dd13179b5 Refactoring
* splits compensation/models.py into subpackage
* renames base objects by adding suffix Mixin
2021-11-16 08:29:18 +01:00
26ae6bc96b Refactoring
* splits intervention/models.py into subpackage
2021-11-15 17:19:06 +01:00
4ae5b38198 Refactoring
* renames model ResponsibilityData into Responsibility
* renames model LegalData into Legal
* moves form->object saving logic into model
* refactors NewDocumentForm into special types for intervention, compensation, eco account and ema
*
2021-11-15 17:09:17 +01:00
6ec37dbe11 #38 User requests
* implements 3) "Extend sharing on direct adding of users"
2021-11-15 14:00:08 +01:00
faffd454b9 #38 User requests
* implements 2) "Multiple revocations for interventions"
2021-11-15 12:18:22 +01:00
a0df7f4fe1 #38 User requests
* implements 1) "Add titles to public reports, next to identifiers"
2021-11-15 11:05:39 +01:00
e99af98a13 #19 Tests
* restructures setup for workflow tests in interventions
2021-11-12 16:42:40 +01:00
92cfb95789 #19 Tests
* adds workflow testing for geometries on new creation of intervention and compensation
*
2021-11-12 14:54:33 +01:00
6c35fc59af #19 Tests
* refactors sharing user setting by introducing share_with(user) and share_with_list(user_list) for BaseObject for a more self-explanatory sharing
2021-11-11 15:09:03 +01:00
ffadfa2f47 #19 Tests
* adds workflow tests for compensation checking and recording
* improves related code
2021-11-11 13:13:05 +01:00
796990ffbc #19 Tests
* adds workflow tests for checkability and recordability for interventions
* fixes/improves code snippets detected by testing
2021-11-11 10:37:22 +01:00
34fd78be5e #19 Tests
* adds workflow tests or deductions in InterventionWorkflowTestCase
* fixes bugs detected by testing
2021-11-10 15:36:18 +01:00
d93ff4015b #19 Tests
* adds new BaseWorkflowTestCase class for encapsulating
* adds new InterventionWorkflowTestCase class with first workflow tests
2021-11-10 14:08:16 +01:00
1dc931d736 #19 Tests
* adds EMA test
2021-11-09 15:33:26 +01:00
81c32d6318 #19 Tests
* adds EMA tests
* extends compensation tests
* fixes bugs detected by testing
* restructured tests for performance boost
2021-11-09 13:06:22 +01:00
9ffd1b4482 #19 Tests
* fixes bug where compensations still appeared on the public report despite being marked as deleted
* fixes bug where eco account could be deducted into a negative account balance
2021-10-28 17:21:07 +02:00
30e5239c49 #19 Tests
* adds tests for compensations (WIP)
* refactors some dummy data generating into base test class
* fixes bugs detected by testing
* adds important requirements.txt change for itsdangerous package (<1.0.0 for compatibility to django-simple-sso)
2021-10-27 14:44:49 +02:00
c4af63cea2 #19 Tests
* refactors CheckableMixin and RecordableMixin into CheckableObject and RecordableObject
* adds ShareableObject for wrapping share related fields and functionality
* adds share functionality to EcoAccount and EMA, just like Intervention
2021-10-26 15:09:30 +02:00
7c7a21052a #19 Tests
* refactors test logic into base test classes
* adds tests for views in konova app
* fixes bugs/warnings detected by testing
2021-10-26 14:26:32 +02:00
023bdda545 #19 Tests
* adds tests for views in intervention app
* fixes bugs detected by test writing
2021-10-26 11:38:34 +02:00
d7bb2ef1dd #36 Quality checks
* adds unchecking/unrecording of interventions in case of post-check|post-record editing
2021-10-25 17:39:39 +02:00
f6f532effb #36 Quality checks
* refactors toggling of recorded status into RecordableMixin
2021-10-25 17:01:02 +02:00
ba04788064 #36 Quality checks
* adds quality check logic for Compensations with CompensationQUalityChecker
* adds compensation quality checking to checking routine of RunCheckModalForm.is_valid()
* adds/updates translations
2021-10-25 13:44:54 +02:00
efd5b6bb98 #36 Quality checks
* moves geometry check logic to upper class
2021-10-25 13:21:27 +02:00
b6e52f6b4c #36 Quality checks
* adds AbstractQualityChecker as base for all quality checker instances
* adds InterventionQualityChecker, inheriting from AbstractQualityChecker
* adds functionality to InterventionQualityChecker
* adds/updates translations
2021-10-25 13:06:54 +02:00
5e00e8cc1b #32 Disable file download
* refactors: attached files can only be downloaded by users with shared access
* adds hint on unshared data being unshared for compensation, ema, eco-account
* minor optical enhancement for user contact form
2021-10-25 08:51:06 +02:00
c45198e825 #26 Annual conservation reports
* adds index form for selecting timespan and office of interest
* adds timespan support for TimespanReport
* fixes naive datetime issues
* fixes missing error message css tag
* adds/updates translations
2021-10-20 13:23:35 +02:00
80bdee5230 EcoAccount fixes
* adds deductable surface field into NewEcoAccountForm directly
* removes custom manager for LegalData and ResponsibilityData
2021-10-20 10:28:01 +02:00
c209b2eb86 Database performance
* optimizes the db fetching for all index views and detail views
* introduces usage of managers.py in all necessary apps for wrapping basic fetch settings
* moves comment.html to comment_card.html under /konova/templates/konova/
* adds/updates translations
* fixes document typos
* drops comment rendering in public reports
* opens public reports in new tabs if button is clicked from the detail view
2021-10-14 14:12:33 +02:00
f894d6d4c5 #25 Public reports
* prevents Actions column in tables from being rendered if there would be no buttons inside due to permission checking
* enhances amount of sql requests for detail view and report view
2021-10-14 08:21:51 +02:00
354ec4c929 #25 Public reports
* adds public report for compensations
* adds/updates translations
* prepares EMA and eco account reports
2021-10-13 17:35:11 +02:00
e49011edc6 #25 Public reports
* adds public report rendering for intervention model
* adds new routes for report
* adds new public_base.html and public_navbar.html
* adds lookup table for zoom levels for lanis link generating
* moves qr code generating into utils/generators.py
2021-10-13 14:03:34 +02:00
efe26ae6f5 Intervention template adjustments
* renames intervention variable to obj to match other template style
* renames open routes to detail routes
2021-10-13 09:26:46 +02:00
f4bfc0db6e #17 Update setup
* removes unused organisation app from project
* removes null=True parameters for M2M fields in models
2021-10-13 09:04:01 +02:00
mipel
86ed11c907 #7 New Form
* refactors/renames folders and files for generic template rendering
* removes unused choiceColumnForm.html
2021-10-06 16:15:40 +02:00
mipel
cac223c922 #7 New Form
* adds NewEmaForm and EditEmaForm
* refactors ResponsibilityData related form fields into reusable mixin CompensationResponsibleFormMixin
   * used in NewEcoAccountForm and NewEmaForm for easier maintaining and reducing amount of code
* refactors templates /xy/new/view.html into /xy/form/view.html since the same template file is used for new and edit forms
2021-10-06 16:00:17 +02:00
mipel
98f8a222dc #7 New Form
* adds EditEcoAccountForm
* adds placeholders for some form fields
* changes comment card in detail view into rlp-grayish
* adds eco account detail view comment box
* removes unnecessary loading of dal scripts in view.html
* refactors generated identifier for data objects (10 digits to 6 uppercase letter-digit combination)
* improves generate_random_string() method by adding more options for generation of strings
* adds/updates translations
2021-10-06 13:10:10 +02:00
mipel
ac665c9268 #7 New Form
* adds NewEcoAccountForm
* refactors NewCompensationForm into AbstractCompensationForm so main fields can be reused again
* fixes template bug in account detail view where the amount of deductions has been displayed instead of the available rest
* refactors _generate_new_identifier() into generate_new_identifier()
* refactors get_available_rest() into returning both, the total and relative amount
* improves saving of SimpleGeometryForm()
* adds/updates translations
2021-10-05 16:35:24 +02:00
mipel
a50deaaf18 #7 New Form
* adds creation of new compensation directly from intervention detail view
* adds comment rendering on compensation detail view (WIP)
* adds shared_access_required decorator
* adds/updates translations
2021-10-04 13:23:14 +02:00
mipel
b7ef6ff006 #7 New Form
* adds NewCompensationForm content and functionality
* renames CODELIST_COMPENSATION_COMBINATION_ID into CODELIST_COMPENSATION_FUNDING_ID for more clarity
* reorganizes compensation forms into compensation/forms/forms.py and forms/modalForms.py
* adds new compensation html template in compensation/templates/compensation/new
* adds new default message template in message_templates.py: IDENTIFIER_REPLACED
* adds/updates translations
2021-10-04 09:55:59 +02:00
mipel
a44c014f4b #7 New Form
* adds intervention comment to detail view
2021-09-29 15:48:25 +02:00
mipel
1965721dea #7 New Form
* extends KonovaCode filtering for parent objects matching given input
* renames data_form into form for easier template render support
* simplifies empty geometry form initialization
2021-09-29 14:49:17 +02:00
72a196d76f #7 New forms
* introduces bootstrap class form-control for proper html form input rendering
* fixes bug where missing shared users for an entry resulted in a None exception
* adds GenerateInput with template in generate-content-input.html, which provides a generate button for fetching server-side content
* adds/updates translations
2021-09-27 13:57:56 +02:00
a1763dc426 #7 New forms
* removes unused OpenInterventionForm
2021-09-27 11:46:41 +02:00
fdb6f2d105 #7 New forms
* refactors large forms.py into forms/modalForms.py and forms/forms.py
* refactors custom input fields into intervention/inputs.py
2021-09-27 11:45:13 +02:00
58eefbdbe6 #7 New forms
* fixes bug in case of unset dates for intervention
* adds missing template formater
* adds/updates translations
2021-09-27 11:12:40 +02:00
mipel
ab1d975e11 #7 New Form
* adds functionality for EditInterventionForm (WIP)
2021-09-27 09:40:00 +02:00
9189785eb0 Full width fields
* refactors full width fields from BaseModalForm into BaseForm to have this nice little feature for regular forms as well!
2021-09-24 15:05:50 +02:00
mipel
cb19c0f85d #7 New forms WIP
* adds saving functionality for new intervention form
* refactors new identifier generating, so a pre-generated identifier from a new element form will be checked again before saving
* adds css fixes for disturbing input field:focus bugs
* adds missing csrf token to new collapsible form
* adds/updates translations
* introduces mark_as_deleted as only marking instead of using delete() which will really delete from the db
2021-09-23 15:05:17 +02:00
mipel
c43a5c243e #7 New forms WIP
* adds new collapsible styled form for new main data
* adds/updates translations
2021-09-21 14:32:10 +02:00
mipel
19db05bc1b #20 Multiple laws
* improves w-100 handling for ModalForms
* adds documentation strings
2021-09-20 14:13:59 +02:00
mipel
b39e96c495 #20 Multiple laws
* refactors law field from ForeignKey to ManyToManyField to support multiple laws being added to one LegalData object
* added funding data to EMA detail view
2021-09-20 13:33:07 +02:00
mipel
fbcb2d9afd Eco Account deduction
* adds deductable_surface to EcoAccount model to provide an easy way to change the deductable amount from an account -> depends on external funding e.g. with AktionBlau or similar
* adds overview of deducted and deductable volume to detail view
* adds check to eco account model, so the deductable_surface can never be larger than the total amount of after_state surface sum
* adds german formating for python logic based number formating
* adds/updates translations
2021-09-17 13:33:51 +02:00
mipel
a77e6bff4c #18 File upload in certain folders
* adds try-except for removing folders in case of non existence or changed folder names on the hard drive
2021-09-17 09:43:03 +02:00
mipel
baa8ebef5c #18 File upload in certain folders
* removes 'revocation' folder if RevocationDocument is removed from an intervention and removes the whole intervention document folder as well, if no other documents for this intervention exist
* adds further documentation
* refactors getting of related documents into Intervention model
2021-09-17 09:05:43 +02:00
mipel
1e18040a17 #18 File upload in certain folders
* removes folder if last InterventionDocument is removed from an intervention and no RevocationDocument exists as well
2021-09-16 09:12:32 +02:00
mipel
1d2b0ca2d9 #18 File upload in certain folders
* increases max_size for FileFields --> triggers when the file name will be automatically changed during upload
* adds Http404 Exception in case document file does not exist anymore on the hard drive
2021-09-01 16:40:36 +02:00
mipel
f64a11cb50 #18 File upload in certain folders
* refactors documents and file upload to be distributed into different subfolders, depending on the type of document (InterventionDocument, RevocationDocument, ...)
* refactors Document model into AbstractDocument
* subclasses RevocationDocument, InterventionDocument, COmpensationDocument, EmaDocument and EcoAccountDocument from AbstractDocument to provide proper functionality for each
* adds new specialized routes for each new document type (opening, removing)
* drops generic get and remove routes for documents
2021-09-01 16:24:49 +02:00
mipel
50a3e6a21c Withdraw to deduct
* refactors Models and attributes
2021-08-30 11:34:35 +02:00
mipel
3f6f576095 Withdraw to deduct
* refactors all files and variable names
* WIP: Models and attributes
2021-08-30 11:29:15 +02:00
mipel
dc0137b2a2 [Compensation] Conservation office #5
* keeps responsible data in compensation model for potential future purposes
* refactors registration_office and conservation_office to map onto KonovaCodes instead of own Organization model
* adds str_as_office property-method to KonovaCode to provide an easy way of rendering template data
* adds missing highlighting in case of missing information about registration office and conservation office
* extends KonovaCode command update_codelist.py for CODELIST_PROCESS_TYPE_ID
* adds preselectors for konova codes in models of CompensationAction, Law and CompensationState
2021-08-27 15:16:05 +02:00
mipel
e35dc6f2a5 [Compensation] Conservation office #5
* keeps responsible data in compensation model for potential future purposes
* refactors registration_office and conservation_office to map onto KonovaCodes instead of own Organization model
* adds str_as_office property-method to KonovaCode to provide an easy way of rendering template data
* adds missing highlighting in case of missing information about registration office and conservation office
2021-08-27 09:44:23 +02:00
mipel
8f641daee4 [EcoAccount] See recorded state of withdraw #6
* adds prefiltering of withdraws --> excludes withdraws of as deleted flagged interventions
* renders intervention-recorded icon into eco account withdraws details view
* fixes bug in case of document deleting which does not contain any files
* renames RecordForm into RecordModalForm for more clarity
2021-08-26 15:45:24 +02:00
mipel
c6fe002451 [Intervention] Revocations files optional #4
* makes revocation file upload optional
 * adds overview about revocations to intervention index
 * adds/updates translations
2021-08-26 15:02:34 +02:00
mipel
83039b9e84 Payment date and comment #3
* adds payment-comment relation in NewPaymentForm
 * drops transfer note form field (may not be used anyway) and replace it with comment
 * adds/updates translations
2021-08-26 14:30:05 +02:00