Commit Graph

56 Commits (87b1da8fdd867e7c49828c014fb7110e571ee1de)

Author SHA1 Message Date
mpeltriaux 87b1da8fdd Autocomplete refactoring
* refactors konova/autocompletes.py by splitting into individual files and moving them to fitting apps
     * autocomplete files now live in APPNAME/autocomplete/...
2 years ago
mpeltriaux 05c1bf677c User forms
* refactors user/forms.py by splitting into modals package and regular forms
    * regular forms can now be found at user/forms/user.py and user/forms/team.py
    * modal forms can now be found at user/forms/modals/...
2 years ago
mpeltriaux 0bf2051bdf Migrations + Cleanup
* adds needed migrations
* refactors forms.py (700+ lines) in main konova app
    * splits into forms/ and forms/modals and single class/topic-files for better maintainability and overview
* fixes bug in main konova app migration which could occur if a certain compensation migration did not run before
2 years ago
mpeltriaux ff26019b6e Mail sending
* adds mail sending logic for new notification setting
* adds new templates for user and team based sending
* enhances all email template layout
* adds translations
2 years ago
mpeltriaux 4138481a1b New Notification
* adds new notification setting to user settings form
* adds translations
* adds initial creating of ENUM on setup command
2 years ago
mpeltriaux ac49f983ee #185 Parcel loading on public reports
* fixes bug where unauthorized clients would not load a geometries parcel view properly
* minor general templates enhancements
2 years ago
mpeltriaux c911276cb4 #169 Team delete-restore
* removes unused code snippets
2 years ago
mpeltriaux 4ec8e1ae07 #169 Team delete-restore
* adds tests for user app
2 years ago
mpeltriaux 5de3f4c24e #169 Team delete-restore
* adds restorable delete functionality to Team model
* refactors minor code model parts by introducing DeletableObjectMixin
* only non-deleted Teams can be chosen for sharing
* deleted Teams can be restored using the proper function on the backend admin
* deleted Teams do not provide
* adds migration
2 years ago
mpeltriaux 170e5798ec #169 Admin on teams
* adds admin column on team index view
* refactors Team model, so multiple members can become admins
* adds team migration for switch from fkey->m2m structure
* renames 'Group' to 'Permission' on user index view to avoid confusion between 'Groups' and Teams
* adds new autocomplete route for team-admin selection based on already selected members of the TeamForm
2 years ago
mpeltriaux c1aa14f6ba #163 Checked icons improvement
* adds a second star icon on currently unchecked but previously checked entries
   --> can be detected easier for another check run
* simplifies some related code parts
* moves some translation string into message_templates.py
* enables session timeout after 60 minutes
* improves comment card layout sizing
* adds/updates translations
2 years ago
mpeltriaux e029f8c61e #146 Team leave
* adds button and functionality for leaving a team
   * if the admin leaves the team, another user will be chosen as new admin automatically
* improves Team (django) admin backend
   * better control over user adding-removing
   * only added team members are selectable as admin
3 years ago
mpeltriaux 250189d895 #142 Localized date improved
* fixes bug where created timestamp has been displayed on modified attribute on detail views
* enhances localized date and datetime rendering
* reorders sub menus in user's profile hub
3 years ago
mpeltriaux f75acd318f HOTFIX
* fixes bug where new teams button would not open modal form
3 years ago
mpeltriaux 963854652e #101 Team mails
* adds mail templates for shared data actions
* fixes bug where deleted compensations would be used for checking
3 years ago
mpeltriaux 87a93b9a7f #101 Team data view
* adds overview of shared teams on object detail view
* adds team data view if button is clicked
3 years ago
mpeltriaux e152dfd4d7 #101 Team sharing form
* adds team sharing field to share form
* splits sharing logic into user based and teams based
* adds TeamAdmin for admin backend
* adds validity check on Team name -> only unused names shall be valid
3 years ago
mpeltriaux 3878b5dbdb WIP: #101 Team sharing form
* adds form for sharing via team
3 years ago
mpeltriaux 9fec85b688 #101 Team enhancements
* visual enhancement for team index rendering
* adds validity check for admin-membership of a team
3 years ago
mpeltriaux 75c70ff8dc #101 Team settings
* adds first implementation for team managing
3 years ago
mpeltriaux d5a3c70788 #86 Email enhancement
* adds object titles to email sending
3 years ago
mpeltriaux 0bd2e5ffef # Migrations
initial migrations commit
3 years ago
mpeltriaux b0f3505972 #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
3 years ago
mpeltriaux 8f40162974 #31 API Tests
* writes test for sharing using the API
* fixes bug on frontend form where an exception occured on generating a new API token if no token existed, yet
* adds permission constraint (default group) for using the api in general
* fixes default-group-only behaviour for sharing-API, so users can only add new users and not removing them, as long as they do not have any other group membership like registration or conservation office
* changes 'ksptoken' to 'Ksptoken' to match CGI standard for http header keys
3 years ago
mpeltriaux b86202ba98 #31 API Token mail
* sends an email to the support address if a new token has been generated
3 years ago
mpeltriaux b13e67e061 #31 API Frontend token generating
* adds frontend settings for users to create API tokens on their user settings
3 years ago
mpeltriaux 26f402fd3b #31 API WIP
* adds support for GET /check on intervention to run checks automatically via API
3 years ago
mpeltriaux 881da38538 #31 API basic implementation
* adds new app to project
* adds relation between User model and new APIUserToken model
* adds first implementation for GET of intervention
* adds basic code layout for future extension by having new versions
3 years ago
mpeltriaux 79b9be5637 # 70 Tab title rest
* adds tab titles for some other pages
* adds/updates translations
3 years ago
mpeltriaux 795f64f20b # 63 Mail data checked
* adds mail sending if shared data is checked
* adds/updates translations
3 years ago
mpeltriaux 5ca4c7c777 # 63 UserNotificationEnum changes
* drops NOTIFY_ON_REGISTERED_DATA_EDITED in favor of NOTIFY_ON_SHARED_DATA_CHECKED
* adds/updates translations
3 years ago
mpeltriaux 7c5454a2c9 # 63 Mail data deleted
* adds mail sending if shared data is deleted
* adds/updates translations
* refactors recording mails into separate email template folder email/recording
3 years ago
mpeltriaux 157f05ead6 # 63 Mail recording/unrecording
* adds mail sending in case of unrecording and recording of data
* adds/updates translations
3 years ago
mpeltriaux 17dc3f7537 # 63 Mail celery
* moves mail sending to celery worker using shared_task in konova/tasks.py
* adds mail sending for shared access given
* adds UserNotification settings checks for mail sending
* adds/updates translations
3 years ago
mpeltriaux dbf32f3138 # 63 Mail background sending
* moves mail sending to background using celery
3 years ago
mpeltriaux 02970b19b4 # 63 Refactoring
* refactors django User model to custom User model to provide further attributes and methods directly on the user model
3 years ago
mpeltriaux 6cb1a31aff Refactors triggering checked/recorded
* refactors BaseForm request/user initialization
* introduces mark_as_edited() method for compensation models
3 years ago
mpeltriaux 779065ec91 Refactoring
* adds simple getter methods for UserActionLogEntry
* replaces manual creation of UserActionLogEntry with new methods
3 years ago
mpeltriaux 6f107ac7a1 Refactoring
* splits ema/models.py into subpackage
* splits konova/models.py into subpackage
* splits user/models.py into subpackage
3 years ago
mpeltriaux 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
3 years ago
mipel 0e839f5e44 #7 New Form
* refactors/renames folders and files for generic template rendering
* removes unused choiceColumnForm.html
3 years ago
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
3 years ago
mipel 7dbf4d5b91 Mobile optimization
* adds table-responsive class to BaseClass
* adds html meta attributes for proper small device rendering
3 years ago
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"
3 years ago
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
3 years ago
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
3 years ago
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
3 years ago
mipel 19f50baae4 Missing group message
* adds group checker decorator for adding a message informing about missing group privileges
3 years ago
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
3 years ago
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
3 years ago