Commit Graph

517 Commits (1d2f0c152fe4d9f35927dcfd982b515e4f2a0f4c)

Author SHA1 Message Date
Christian Merten 1d2f0c152f
feat(members/admin): add excursion code to filenames and generated documents 10 months ago
Christian Merten 24810a4f2b
fix(members/models): align SJR subsidizable participants with regulations 10 months ago
Christian Merten 40edd650dc
chore(static): remove unused images and normalize naming 10 months ago
Christian Merten c95b839191
fix(members/models): list more than 11 participants 10 months ago
Christian Merten 7cae13fc1d
feat(members/excursion): add basic approval status 10 months ago
Christian Merten 9d1351197a
fix(css/people_grid): set max-width of boxes 10 months ago
Christian Merten 362a29dca8
fix(media_access): unprotect members and website images
Since access to all media content required staff login, images intended for display on the website
were no longer accessible without login. This commit removes the protection for image files of members
and startpage posts.

We also add tests to prevent this regression from happening again.
10 months ago
Christian Merten 8b03deda5b members/admin: adapt LJP application to new format (#121)
Implements the new LJP application format as outlined in #116. In particular:

- The V-32 PDF is replaced by an `.xlsx` sheet.
- The LaTeX generated PDF for the seminar report is replaced by a `.docx` file, generated by `pandoc` from a modified `.tex` file.
- The cost and participants overview from the old PDF can still be generated separately, but is no longer required.

Also adds many fields to `LJPProposal` that are required to generate the full application.
10 months ago
Christian Merten e8f4448d62
members/admin: remove trailing whitespace 11 months ago
Christian Merten 5227efe17b
members/excursion: add LJP category field to activity category 11 months ago
Christian Merten 79c20087e3
mailer: use internal mail domains variable in error messages 11 months ago
Christian Merten 06db761021
locale: fix translations 11 months ago
Christian Merten 79b48c9079
members/admin: add action to only request mail confirmation of not yet confirmed email addresses 11 months ago
marius.klein 678559fb4d members/pdf: add numbering to participant listings (#119)
Also add a total participants and youth leaders count on the members on list inline tab.

Reviewed-on: #119
Reviewed-by: Christian Merten <christian@merten.dev>
Co-authored-by: marius.klein <marius.klein@alpenverein-heidelberg.de>
Co-committed-by: marius.klein <marius.klein@alpenverein-heidelberg.de>
11 months ago
marius.klein d1a8e7f159 members/admin: group overview excel (#118)
closes #110

Reviewed-on: #118
Reviewed-by: Christian Merten <christian@merten.dev>
Co-authored-by: marius.klein <marius.klein@alpenverein-heidelberg.de>
Co-committed-by: marius.klein <marius.klein@alpenverein-heidelberg.de>
11 months ago
Christian Merten 530aea3244
contrib: factor common media path manipulations out 11 months ago
Christian Merten 49c4e4c548
settings: remove MEDIA_MEMBERLISTS and use MEDIA_ROOT everywhere 11 months ago
marius.klein cfcde2da3a finance/statement: make `subsidy_to` and `allowance_to` optional (#112)
closes #108

- fields for receivers of allowance `a` and subsidies `s` are not compulsory anymore. If receivers are given, `a` and `s` are payed out for them. `s` can only be payed out in total, disregarding the number of receivers given for `a`.
- In the overview pages (activity and statement), we are now distinguishing between theoretical `a` + `s` and what has been payed out practically. If no receiver was given for either things, it is made clear that nothing is payed out. All combinations of `0`, ..., `n` payed allowances (`n` being number of approved participating YLs) and `0, `1` payed subsidies are possible.
- transaction generation logic adapted accordingly

Reviewed-on: #112
Reviewed-by: Christian Merten <christian@merten.dev>
Co-authored-by: marius.klein <marius.klein@alpenverein-heidelberg.de>
Co-committed-by: marius.klein <marius.klein@alpenverein-heidelberg.de>
11 months ago
Christian Merten 7b2a47536e
templates: replace local specific templates by placeholders 11 months ago
Christian Merten 6ffa2376b8
settings: use toml configuration files
We replace the current environment variable based configuration approach by
reading all local configuration from a `settings.toml` configuration file.
The docker test, development and production setups have been updated to use
the new setup.

The configuration folder also allows overriding every template in a
`config/templates` directory. We use this in a follow-up to move
all local specific templates, e.g. the registration form, into this
config directory.
11 months ago
Christian Merten 8a9cdc22d1
startpage/templates: use section variable 11 months ago
Christian Merten 9a07ef74a6
templates/admin: use section variable 11 months ago
Christian Merten aefef315bc
members/models: use section name in signature on SJR application 11 months ago
Christian Merten aaa43b9ae1
locale: fix various grammar mistakes 11 months ago
Christian Merten 56d8adb510
members/admin: add place column and group filter to excursion list display 11 months ago
Christian Merten 3e1a5c3fbb
tests: add coveragerc to exclude jet files from coverage report 11 months ago
Christian Merten d1075f43e7
members/tests: add more admin tests 11 months ago
Christian Merten 9610503caa
finance/tests: add tests for models 11 months ago
Christian Merten 034478ba44
members/admin: show and filter by echo status 11 months ago
Christian Merten a0da26476c
members/tests: add tests for admin pages 11 months ago
Christian Merten 3622743d2c
members/pdf: normalize filenames in merge_pdf 11 months ago
Christian Merten 3e0d55c0ed
members/registration: escape special characters in user input 11 months ago
marius.klein e7dcbb47ab finance/statement: show IBAN validity in submit views (#104)
* Add new attribute `iban_valid` to `Member`.
* Submit pages of regular expenses and activity expenses now include an overview which people with expenses have a valid IBAN.
* Add a note that IBAN validity should be checked manually before submitting.

Right now, no technical barriers are in place that prevent missing/wrong IBANs when a statement is submitted. This is intentional to preserve maximal flexibility.

In a follow-up PR, one could add custom warning messages on top of page when some IBANs are invalid.

Reviewed-on: #104
Reviewed-by: Christian Merten <christian@merten.dev>
Co-authored-by: marius.klein <marius.klein@alpenverein-heidelberg.de>
Co-committed-by: marius.klein <marius.klein@alpenverein-heidelberg.de>
11 months ago
Christian Merten a2cbae2c8e
media: require staff login for media access 11 months ago
Christian Merten 7d74e5d908
members/tests: add tests for views 11 months ago
Christian Merten d4a8c4a515
members/models: factor out upload_registration_form_link 11 months ago
Christian Merten 05cb501942
ludwigsburgalpin/tests: add tests for views and admin 11 months ago
Christian Merten 593cef520d
members/tests: only test age for passed dates 11 months ago
Christian Merten 39f1700131
members/tests: skip sjr application generation 11 months ago
Christian Merten 0960646d1f
finance/tests: adapt to new logic with allowance_to and subsidy_to 11 months ago
marius.klein 91ceaaf9f9 members/excursion: select invoice for sjr application form (#103)
Closes #61

Adds to the generate sjr application process a form in order to select one invoice.

Reviewed-on: #103
Co-authored-by: marius.klein <marius.klein@alpenverein-heidelberg.de>
Co-committed-by: marius.klein <marius.klein@alpenverein-heidelberg.de>
11 months ago
Christian Merten 98a03e4abd
members/ljp: fix calculation of participants
Implements the correct formula for computing the participant count according to the LJP
regulations. Also adds extensive unit tests for the formula.
11 months ago
Christian Merten afdbb56d81
finance: don't include subsidies in theoretic total
Subsidies paid for night and travel costs are expected to be listed
in the bills of the associated statement. Hence, they should not be
counted a second time in the theoretic total. This affects LJP
and SJR applications.
11 months ago
Christian Merten e2bff68471
members/admin: add check for valid allowance_to in finance overview 11 months ago
Christian Merten 2e6bfc9b75
finance/statement: make allowance_to optional
If an excursion has zero admissable youth leaders, the statement and hence the excursion
currently can't be saved, because the `allowance_to` field has to be non-empty, but
the number of entries has to be zero. This commit hence makes the field optional.
11 months ago
Christian Merten 5d0aa18dde
finance: adapt to allowance_to and subsidy_to
Use the new `allowance_to` and `subsidy_to` fields in statement validation. The
night and travel costs have to be transferred to the person listed as `subsidy_to`,
the allowance has to be paid to the persons listed in `allowance_to`.
11 months ago
Christian Merten 17bf6e8186
members/admin: fix incorrect syntax in translation string 11 months ago
Christian Merten 8b932461b7
finance/statement: add selection fields for allowance and subsidies
In the statement tab on excursions, add two new fields to select to which
youth leaders the allowance and subsidies should be paid. The fields
are checked for validity based on the number of approved youth leaders.

Also add a new field on excursions to allow for additional approved youth
leaders.

The new fields are not yet used in the statement confirmation process.
11 months ago
Christian Merten ce466671f2
members/waitinglist: fix queryset based age calculation 11 months ago
Christian Merten afb38c118a
members/admin: add age list filter for waitinglist 11 months ago