Commit Graph

287 Commits

Author SHA1 Message Date
286ed609da #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
2bd94a7618 #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
22da2d4bbe #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
6cb1a31aff 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
bd36ab5b6f #35 Sanity command
* refactors "toggling" of recorded/checked state
* introduces mark_as_edited() for RecordableObjectMixin
2021-11-17 12:09:49 +01:00
779065ec91 Refactoring
* adds simple getter methods for UserActionLogEntry
* replaces manual creation of UserActionLogEntry with new methods
2021-11-16 13:15:15 +01:00
71e4aa9a2f 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
6ad387daa3 Refactoring
* moves updating of shared access users into Intervention
2021-11-16 12:51:10 +01:00
d8f0db6bd6 Refactoring
* moves adding of deduction into Intervention and EcoAccount model
* hardens against circular import issues
2021-11-16 12:43:13 +01:00
9b531bc09e Refactoring
* moves adding of revocation into Intervention model
2021-11-16 12:26:50 +01:00
60a50b304a Refactoring
* drop SSO message sending for now from the logic
2021-11-16 11:57:06 +01:00
78945d648f Refactoring
* splits compensation/models.py into subpackage
* renames base objects by adding suffix Mixin
2021-11-16 08:29:18 +01:00
d78afbfb5c Refactoring
* splits intervention/models.py into subpackage
2021-11-15 17:19:06 +01:00
bcffae4a95 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
7ed114a858 #38 User requests
* implements 3) "Extend sharing on direct adding of users"
2021-11-15 14:00:08 +01:00
36470f819c #38 User requests
* implements 2) "Multiple revocations for interventions"
2021-11-15 12:18:22 +01:00
e922b983dd #38 User requests
* implements 1) "Add titles to public reports, next to identifiers"
2021-11-15 11:05:39 +01:00
e59af1e437 #19 Tests
* restructures setup for workflow tests in interventions
2021-11-12 16:42:40 +01:00
ea14a01f89 #19 Tests
* adds workflow testing for geometries on new creation of intervention and compensation
*
2021-11-12 14:54:33 +01:00
ce7033943f #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
667f378b74 #19 Tests
* adds workflow tests for compensation checking and recording
* improves related code
2021-11-11 13:13:05 +01:00
7d611a60d8 #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
bcee58700a #19 Tests
* adds workflow tests or deductions in InterventionWorkflowTestCase
* fixes bugs detected by testing
2021-11-10 15:36:18 +01:00
08d023092f #19 Tests
* adds new BaseWorkflowTestCase class for encapsulating
* adds new InterventionWorkflowTestCase class with first workflow tests
2021-11-10 14:08:16 +01:00
0fac17ad68 #19 Tests
* adds EMA test
2021-11-09 15:33:26 +01:00
c221d00c28 #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
107cbeadee #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
b5fc96c1cf #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
5213c717d9 #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
bfe541f83e #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
2553eb2825 #19 Tests
* adds tests for views in intervention app
* fixes bugs detected by test writing
2021-10-26 11:38:34 +02:00
4a4c9ad049 #36 Quality checks
* adds unchecking/unrecording of interventions in case of post-check|post-record editing
2021-10-25 17:39:39 +02:00
1c3ab898cc #36 Quality checks
* refactors toggling of recorded status into RecordableMixin
2021-10-25 17:01:02 +02:00
619f2110e4 #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
4c7efdb800 #36 Quality checks
* moves geometry check logic to upper class
2021-10-25 13:21:27 +02:00
a5b1f68f62 #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
af70303b32 #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
6b839b7f60 #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
9e7e5ee726 EcoAccount fixes
* adds deductable surface field into NewEcoAccountForm directly
* removes custom manager for LegalData and ResponsibilityData
2021-10-20 10:28:01 +02:00
85759a636a 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
ce74d011f6 #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
193ba4c658 #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
ac17d953c6 #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
af0fe655b3 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
f50dccb30b #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
0e839f5e44 #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
3842bcf0b1 #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
60f03591ef #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
d84fe68120 #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
3d31a13508 #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
9cfb400bad #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
61b75be1a1 #7 New Form
* adds intervention comment to detail view
2021-09-29 15:48:25 +02:00
mipel
7841599650 #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
ea0a07890c #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
78ef1b79af #7 New forms
* removes unused OpenInterventionForm
2021-09-27 11:46:41 +02:00
877a1ca335 #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
e94dbbd3c8 #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
7ee28e526e #7 New Form
* adds functionality for EditInterventionForm (WIP)
2021-09-27 09:40:00 +02:00
72ed82ecd6 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
9b728e5d10 #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
951477c58f #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
89c75d471b #20 Multiple laws
* improves w-100 handling for ModalForms
* adds documentation strings
2021-09-20 14:13:59 +02:00
mipel
8a2bbb1fc2 #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
4c045618e6 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
416d11d1ee #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
9dbea71af5 #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
cd3eb8099d #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
270f9ab7d2 #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
3c9d73533f #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
d569be80b3 Withdraw to deduct
* refactors Models and attributes
2021-08-30 11:34:35 +02:00
mipel
cd5fb9cad6 Withdraw to deduct
* refactors all files and variable names
* WIP: Models and attributes
2021-08-30 11:29:15 +02:00
mipel
81cea4f045 [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
6b70ee8ba9 [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
280510d729 [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
415fe267d2 [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
6ce17dd480 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
mipel
2c3f6bbcd1 Detail view adjustments
* adds EMA and eco account conservation office data to detail views
* adds line break in header of detail views
* adds/updates translations
2021-08-19 14:04:44 +02:00
mipel
615b7bf5ea EMA
* fixes created timestamp in detail views where modified needs to be displayed
* adds fallback timestamp if data has not been edited, yet --> show created timestamp
* fixes bug where deleting of certain data didn't redirect to the index view
* adds quality_check() method for EMA, needed for recording
* adds all functions which are provided for compensations to EMA
* adds/updates translations
2021-08-19 13:44:06 +02:00
mipel
d1f43f8c64 EMA
* adds Ema model (basically Compensation inherited)
* adds index view for EMAs
* fixes drop-down link bug for menu 'More' in navbar
* refactors some more forms to use process_request()
* adds modified attribute to BaseResource for easy last_modified check
* adds setting of modified attribute in all places where UserAction.EDITED is added to log
* adds EMA_ACCOUNT_IDENTIFIER_LENGTH and EMA_ACCOUNT_IDENTIFIER_TEMPLATE to ema/settings.py
* adds EmaAdmin to ema/admin.py
* fixes wrong title in intervention detail view html for revocations
* adds support for subtitle variable to BaseTable and generic_index.html
* drops next_version attribute from models
* adds/updates translations
* adds default ordering for UserActionLogEntry
   * removes extra ordering in log modal rendering
2021-08-19 13:02:31 +02:00
mipel
833483b810 SSO and messages
* adds message for checking of intervention
* refactors sso message sending to handle an iterable of users
* adds specific method for sending object checking related messages
* adds label support for modal form for more simple clicking of checkboxes
2021-08-17 10:32:54 +02:00
mipel
ddd6669bbf Translations
* adds/updates translations
2021-08-11 14:50:54 +02:00
mipel
244e300715 Identifier generating
* refactors identifier generating into BaseObject class
2021-08-11 14:31:24 +02:00
mipel
c8b6d001ef Minor enhancements
* refactors eco account rest surface calculation into designated method get_available_rest()
* refactors placeholder setter for BaseForm
* adds automatic eco account identifier generating on saving
* fixes ServerMessageImportance template tag
2021-08-11 14:17:43 +02:00
mipel
5f85f49636 Recording data
* adds dynamic icon for recording and unrecording of data
* adds record view to intervention and eco accounts
* adds quality_check() method for Intervention and EcoAccount class which holds logic for data quality checking
* adds UserAction "unrecorded"
2021-08-10 17:19:42 +02:00
mipel
bd2413d63c EcoAccount detail view
* adds record control button
* adds html markup for invalid withdraws (unrecorded account)
* adds constraint to is_valid() method of NewWithdrawForm for checking whether the selected account for a withdraw is recorded or not
* adds/updates translations
2021-08-10 14:15:42 +02:00
mipel
09d7cad8c8 LANIS Link
* adds LANIS link getter to Intervention, Compensation and EcoAccount for creating a usable link to LANIS
* adds/updates translations
2021-08-10 13:57:03 +02:00
mipel
766d38bcbf HTML improvements
* refactors initializing and rendering of a map view into map/geom_form.html, which leads to simple includes on the detail views instead of redundant html
* refactors django-autocomplete-light form media links and scripts into dal/scripts.html, which can be included on the header blocks of detail views to support form modals using dal easier without the need for form.media
* changes filter behaviour on eco account index: instead of hiding recorded accounts (like in interventions), the filter option there has been replaced with "Show only unrecorded" which can be used to hide all recorded ones
   * background: eco accounts shall be visible when recorded, since they can only be used for withdrawing if they are recorded. Hiding the recorded ones does not make any sense, just like in interventions
* updates some code documentation
* adds/updates translations
2021-08-10 13:12:15 +02:00
mipel
f8b3e5c8fd EcoAccount withdraws
* adds functionality for withdraws from eco accounts in detail view of interventions and eco account as well
* adds get_surface() method to AbstractCompensation class to provide a simple getter for a sql calculation
* adds get_surface_withdraws() method to EcoAccount class to provide a simple getter for a sql calculation
* renames some routes to match coherent rout naming
* adds logic check on NewWithdrawForm
* renames templates/table directory to templates/form, since there are form-table templates inside --> more clarity
* adds new autocomplete routes to konova/urls.py for Interventions and EcoAccounts
* adds/updates translations
* adds/updates template comments
* updates requirements.txt
2021-08-10 10:42:04 +02:00
mipel
58510eee50 EcoAccount template and logic
* adds eco-account own includes for simpler maintainability instead of refactoring to generic includes for compensation app and predefining urls and stuff on the backend
* adds before-state, after-state, actions, deadlines, documents and withdraws to eco account detail view
* adds hint for invalid withdraw in intervention detail view in case of deleted eco account
* adds/updates translations
2021-08-09 15:09:43 +02:00
mipel
abdc574ea2 EcoAccount detail
* adds detail view for eco account
* adds withdraw detail view to eco acount detail
* generalizes compensation/includes templates to be reusable for eco-accounts
* moves is_shared_with() check to class BaseObject
* adds/updates translations
2021-08-09 14:39:36 +02:00
mipel
93c02a72ca EcoAccount index
* renames eco_withdraws to withdraws
* adds EcoAccountTableFilter
* changes percentage withdraw to surface withdraw --> renames amount to surface
* updates EcoAccountTable
  * adds column for rendering rest of available account using a progress bar
* adds progressbar.html to konova/custom_widgets
* adds/updates translations
2021-08-09 14:16:54 +02:00
mipel
5efa755188 Log
* adds modal_generic.html template for generic usage
* adds M2M field log to BaseObject
* adds show log button to controls.html
* adds logging on adding related objects
* adds render log table using generic modal
* adds tooltip to missing values in detail views
* adds/updates translations
2021-08-05 12:54:28 +02:00
mipel
f69d98460f Template improvement
* minor improvement
2021-08-04 15:55:40 +02:00
mipel
135f25d88b Intervention check
* adds functionality for check button
* adds highlighting of important data on detail view for intervention
* adds deleting logic to BaseObject model and BaseResource model
* adds RunCheckForm
* adds check_validity() method to Intervention class
* fixes wrong success msg for adding documents
* adds/updates translations
2021-08-04 15:19:06 +02:00
mipel
685f425e29 Document open fix
* fixes a bug in opening a document
2021-08-04 13:34:28 +02:00
mipel
8e1f679c2a Intervention revocation
* adds Revocation model to interventions/models.py
* adds revocations to interventions detail view
* fixes duplicated ids in html includes
* refactors controls for detail view into included template files (controls.html)
* reduces max length for payment transfer notes from 1000 to 200
* adds RevocationAdmin to intervention/admin.py
* adds new form for adding a Revocation to an intervention's legal_data
  * only one revocation per intervention possible
  * removes add button in case of an existing revocation
* adds revocation routes to intervention app
* renames document field in Document model into file for more clarity
* adds/updates translations
2021-08-04 13:32:35 +02:00
mipel
d773c3b3d4 Fixes and improvements
* fixes group check on detail views
* adds check for required fields in BaseForm for showing required field hint or not in template
2021-08-04 08:41:21 +02:00
mipel
cd5b2e264b Fixes and improvements
* moves diff_states message back to table top for direct presentation in compensation/detail/view.html
* removes diff_states rendering in deadline card in compensation/detail/view.html
* fixes before_state adding based on GET parameter
* refactors UserActionlogEntryEnum into a UserAction TextChoice (Django 3.x)
* adds ordering of compensation states depending on surface value
* refactors ServerMessageImportance from enum into TextChoice (Django 3.x)
* adds/updates translations
2021-08-03 17:22:41 +02:00
mipel
816600535a Compensation detail view
* adds compensation detail view (WIP)
* adds includes dir for related objects, similar to interventions
* adds functionality for
   * adding/removing before_states
   * adding/removing after_states
   * adding/removing deadlines
   * adding/removing documents
* refactors usage of BaseModalForm
   * holds now process_request() in base class for generic usage anywhere
* adds __str__() method for some models
* compensation__action is blank=True now
* renamed tooltips
* adds new routes for state/deadline/document handling inside of compensation/urls.py
* adds precalculation of before/after_states for detail view, so users will see directly if there are missing states
* removes unnecessary link for intervention detail payment
* adds missing tooltips for check and record icon on detail views
* refactors DeadlineTypeEnum into DeadlineType in konova/models.py, just as the django 3.x documentation suggests for model enumerations
* UuidModel id field is not editable anymore in the admin interface
* adds/updates translations
2021-08-03 13:13:01 +02:00
mipel
19f50baae4 Missing group message
* adds group checker decorator for adding a message informing about missing group privileges
2021-08-03 09:45:41 +02:00
mipel
f58650effa Default group required
* adds access checks depending on the current group confgiguration of a user
* removes buttons for adding/editing or removing data if default group is not set for a user
* removes buttons for adding/removing related data in unshared interventions
* removes shared-user setting from share menu of an intervention if user is not zb or ets
* renames has_access() from intervention Model into is_shared_with() for more clarity
* fixes bug in group check in_group() from utils.py
2021-08-02 16:23:29 +02:00
mipel
63b2d3ef66 Compensation enhancements
* compensations won't be listed in index table if related intervention has been deleted
* adds functionality for intervention remove button
* adds outcommented code
* adds configurable redirect_url for RemoveModalForm's process_request method
* adds translation
2021-08-02 15:39:33 +02:00
mipel
d203046666 Intervention detail view
* adds overview of shared with users
2021-08-02 14:56:08 +02:00
mipel
c72ff615ba User contact modal
* adds user/includes/contact_modal_button.html for calling contact data of a user
* adds user contact modal to intervention detail view
* adds translations
2021-08-02 14:10:57 +02:00
mipel
6e2ee15b93 Minor template enhancement 2021-08-02 13:29:33 +02:00
mipel
f113bad733 Created|Deleted refactoring
* refactors base attributes created and deleted into UserActionLogEntry foreign keys
* refactors all related queries and process logic
* fixes binding_on into binding_date in intervention/detail/view.html
* adds basic __str__ for some models
*
2021-08-02 11:52:20 +02:00
mipel
92cacd7aaa RemoveModalForm refactoring
* wraps generic request processing logic into RemoveModalForm
* adds delete action to intervention detail compensations.html
* fixes rendering of deleted compensations in intervention detail view
2021-08-02 10:53:34 +02:00
mipel
6a650d2021 Eco Accounts
* adds related eco account withdraw detail view to intervention detail view
* adds new route for removing withdraws using RemoveModalForm
* adds EcoAccountWithdraw model
* adds admin interfaces for EcoAccount and EcoAccountWithdraw
* adds message_templates.py to konova/utils for reusable messages
* splits related-documents.html and related-objects.html into separate templates for each related object type: compensations.html, documents.html, eco-account-withdraws.html and payments.html
* adds translations
2021-08-02 10:14:34 +02:00
mipel
52600c9a16 Share intervention settings
* extends share link form to share settings form
* adds list of users with access to the intervention
* adds logic for removing these users
* enhances translations
2021-07-30 15:23:46 +02:00
mipel
5c16406873 Share url view
* adds modal for rendering the share url
* adds new custom_widget text-to-clipboard-input.html
  * provides a copy button for writing the text input's value into the client's clipboard
* adds translation
2021-07-30 14:34:36 +02:00
mipel
2f33e5fba9 Access url for interventions
* adds access_token as new attribute
* adds generating of access_token
* adds new form
* adds two new routes for sharing an intervention
* adds translation
* adds render_submit to BaseModalForm which triggers rendering the modal footer
2021-07-30 13:30:42 +02:00
mipel
e327f03893 Intervention model refactoring
* splits Intervention model into three main components
   * Intervention (main object)
   * LegalData (holds legal dates, laws, etc.)
   * ResponsibilityData (holds organizations and handler)
   * This way data can be extended more easily in the future
* refactors admin.py and usages in templates
* introduces UuidModel as a base class for BaseResource
2021-07-30 09:30:33 +02:00
mipel
4647be958b Intervention model refactoring
* adds UserActionLogEntry model to user/models.py
  * wraps user and timestamp info
  * can be extended for more information in the future
* refactors all filtering and accessing on values
2021-07-29 15:49:19 +02:00
mipel
287e0b4068 Compensation index view
* adds filters and table optimizations for compensation index rendering
* fixes recorded_by/checked_by confusion in intervention table
2021-07-29 10:51:14 +02:00
mipel
c76a061740 Template improvements
* refactors templates/table.html into templates/generic_index.html
* adds DummyFilterInput as do-not-render-widget
* hardens combination of q filter and other filters on index view rendering
2021-07-28 09:53:14 +02:00
mipel
1d77eb293e Harden search filter
* hardens search filter against whitespaces
* renames 'Show all' filter to 'Show unshared' for clarification
* adds translation
2021-07-28 08:54:48 +02:00
mipel
09fad6a2de Document upload fix
* fixes some minor issues with the document upload
2021-07-26 15:34:30 +02:00
mipel
1ff02c30a6 Document upload
* adds document upload form
* refactors modal form templates into form classes
* adds document upload route to intervention routes of urls.py
2021-07-26 15:16:16 +02:00
mipel
1d4be22da5 Template restructuring
* splits large templates into smaller includes
* removes localized form input for payments
* refactors Document removing using the generic remove form
2021-07-26 14:35:19 +02:00
mipel
2889b10e0d Payments add modal form
* adds help texts to add payment form
* adds removing button for payments
* refactors user fetching into BaseForm
* adds generic RemoveModalForm which is intended to be used for every modal form which shall remove something
* adds translations
* removes unused html
* prepares payment amount field to be able to process german inputs like '1.000,50' which is not the international default
2021-07-26 11:29:05 +02:00
mipel
23afe2654e Payments add modal form
* adds modal form for adding payments
* generalizes generic_table_form.html for table-form-like usage in modal_form.html
* adds css enhancements for focused input fields
* adds BaseModalForm as specification to BaseForm, which inherits the BSModalForm class as well
* adds translations
2021-07-26 10:23:09 +02:00
mipel
8885f81770 Documents removing
* adds generic modal rendering using package django-bootstrap-modal-forms
* adds document file removing from hard drive
* adds translations
2021-07-23 18:27:53 +02:00
mipel
47ec30919c Documents removing
* adds document removing button
* adds translation
* adds Document admin
2021-07-23 16:04:58 +02:00
mipel
a0c0a0f074 Documents
* add get document route
* add missing attributes to intervention detail view
2021-07-23 15:35:05 +02:00
mipel
13a15e4f56 Compensation routes
* improves compensation routes
2021-07-23 15:23:54 +02:00
mipel
b962e22c04 Intervention relations enhancements
* refactors model relation to compensation and payment by applying 1-n instead of n-n
2021-07-23 09:36:43 +02:00
mipel
eaa9c43afe Intervention Detail View
* adds hint for empty map in case of missing geometry
* adds empty geometry workaround, so openlayers is rendered without digitalization tools
* adds translations
2021-07-22 16:06:13 +02:00
mipel
a304f8d42e Intervention Detail View
* adds related object overview in detail view
* adds comment field to payment model for 'Verwendungszweck'
* simplifies intervention urls
* adds translations
2021-07-22 14:58:58 +02:00
mipel
4d651aec24 Intervention Detail View
* adds (WIP) detail view for interventions
* renames typo in conservations_file_number to conservation_file_number
* adds simple has_access check for intervention objects for given users
* renames occurences of "Registered" to "Recorded" (verzeichnen)
* adds an informing message for detail view of intervention objects which are not editable for a user
* adds GeometryAdmin
* adds fallback DEFAULT_SRID for Geometry model
* adds translations
2021-07-22 13:19:14 +02:00
mipel
0c1fa72556 Table filters
* adds table filtering for InterventionTable
* adds default ordering
* moves user-access filtering from view to InterventionTableFiler
* adds generic render_icn method for BaseTable (for usage with fontawesome5)
* adds translations
* improves table.html template
2021-07-22 10:00:59 +02:00
mipel
67f415c2e3 Intervention tables and model adjustments
* adds user access relation to certain models
* adds pagination to tables
* adds checked_on/_by attributes to intervention model
* adds custom column rendering for checked and registered columns
* adds first simple index filtering of default interventions for user
* adds translations
2021-07-21 15:40:34 +02:00
mipel
bfdd5665b7 Renaming models
* minor renaming
2021-07-20 17:04:07 +02:00
mipel
6ac0556601 Default bootstrap tables
* adds basic bootstrap classes to BaseTable model
2021-07-20 14:23:16 +02:00
mipel
596d61f667 Default bootstrap tables
* refactors old table index template into bootstrap-fontawesome generic table
2021-07-20 14:05:44 +02:00
mipel
75f983f7a7 Refactoring to konova 2021-07-01 15:08:22 +02:00
mipel
4084373e2b Refactoring to konova 2021-07-01 14:38:57 +02:00
mipel
a5e8bcfa8c Initial 2021-07-01 13:36:07 +02:00