concrexit issueshttps://gitlab.science.ru.nl/thalia/concrexit/-/issues2017-12-10T21:12:33+01:00https://gitlab.science.ru.nl/thalia/concrexit/-/issues/476Document automatic mailing lists in the admin UI2017-12-10T21:12:33+01:00Joost Rijneveldjoost@joostrijneveld.nlDocument automatic mailing lists in the admin UI### One-sentence description
Add a few lines of text to the admin interface that describe what the automatic mailing lists do.
Spin-off of #388
### Why?
Nobody reads code, nobody properly communicates this information to the next boa...### One-sentence description
Add a few lines of text to the admin interface that describe what the automatic mailing lists do.
Spin-off of #388
### Why?
Nobody reads code, nobody properly communicates this information to the next boards.
### Current implementation
People know(tm)
### Desired implementation
Include some text in the admin UI describing `leden@` etc.https://gitlab.science.ru.nl/thalia/concrexit/-/issues/470Invalid attempts at new users are already sent an email2018-07-08T22:07:59+02:00Joost Rijneveldjoost@joostrijneveld.nlInvalid attempts at new users are already sent an email### One-sentence description
Invalid attempts at new users are already sent an email when one attempts to add them using the admin forms.
### Current behaviour
Adding a user that triggers validation errors also triggers outgoing email...### One-sentence description
Invalid attempts at new users are already sent an email when one attempts to add them using the admin forms.
### Current behaviour
Adding a user that triggers validation errors also triggers outgoing emails. This means that emails to one new user can be sent multiple times. Perhaps other things also happen.
### Expected behaviour
Nothing should change when the form is considered invalid.
### Steps to reproduce
1. Create a new user
2. Mess up one input field (when testing, I forgot to add a number in the first address line)
3. Observe an outgoing email (e.g. when running in development mode, as output of `manage.py`)https://gitlab.science.ru.nl/thalia/concrexit/-/issues/462Include version number in rendered HTML2018-07-25T14:22:12+02:00Joost Rijneveldjoost@joostrijneveld.nlInclude version number in rendered HTML### One-sentence description
Include version number in rendered HTML.
### Why?
This makes it more fool-proof to test and compare beta and production.
### Current implementation
Currently there is no such thing.
### Desired implemen...### One-sentence description
Include version number in rendered HTML.
### Why?
This makes it more fool-proof to test and compare beta and production.
### Current implementation
Currently there is no such thing.
### Desired implementation
During the CI build of the docker image, expose some environment variable that contains the version number. This can then be rendered in some comment in the top-most HTML template.https://gitlab.science.ru.nl/thalia/concrexit/-/issues/458API information leakage2017-12-10T21:12:55+01:00Joren VranckenAPI information leakage### One-sentence description
Some private information is leaked from the database through the API.
### Why?
When the ThaliApp requests events information from the website, private information is revealed.
For example, the registra...### One-sentence description
Some private information is leaked from the database through the API.
### Why?
When the ThaliApp requests events information from the website, private information is revealed.
For example, the registration dates of every participant of an event and their member ids.
### Current implementation
When querying the API, data is returned that is private and seemingly unnecessary.
### Desired implementation
The API should only return necessary data.https://gitlab.science.ru.nl/thalia/concrexit/-/issues/453Vertaal automatische mailtjes aan het bestuur2017-12-10T21:13:08+01:00Joost Rijneveldjoost@joostrijneveld.nlVertaal automatische mailtjes aan het bestuur### One-sentence description
Emails to the board should be in English as well.
### Why?
The board might some day be non-Dutch.
### Current implementation
The emails were copied from concrete5, so are still Dutch. They were added in ...### One-sentence description
Emails to the board should be in English as well.
### Why?
The board might some day be non-Dutch.
### Current implementation
The emails were copied from concrete5, so are still Dutch. They were added in !502 and others.
### Desired implementation
The emails should be in English.https://gitlab.science.ru.nl/thalia/concrexit/-/issues/437Boete niet verplicht bij evenementen zonder inschrijvingen2017-12-13T12:44:17+01:00Thom WiggersBoete niet verplicht bij evenementen zonder inschrijvingen### One-sentence description
De boete bij het afmelden voor een evenement niet meer verplicht hoeven invullen / op nul kunnen laten staan bij evenementen waarvoor je je niet hoeft aan te melden.
### Why?
Ik krijg steeds foutmeldingen a...### One-sentence description
De boete bij het afmelden voor een evenement niet meer verplicht hoeven invullen / op nul kunnen laten staan bij evenementen waarvoor je je niet hoeft aan te melden.
### Why?
Ik krijg steeds foutmeldingen als ik mijn borrels bewerk.
### Current implementation
Ik krijg als ik een borrel maak dan klaagt de site dat ik `5.0` moet invullen.
### Desired implementation
Niet meer `5.0` hoeven invullen als ik ook geen aanmeldingen accepteer.https://gitlab.science.ru.nl/thalia/concrexit/-/issues/422Zoeken naar mailinglijsten op basis van aliassen is lastig2017-12-10T21:12:52+01:00Joost Rijneveldjoost@joostrijneveld.nlZoeken naar mailinglijsten op basis van aliassen is lastig### One-sentence description
Het is lastig om een mailinglijst te vinden op basis van een alias (ctlr+F in het overzicht werkt dan natuurlijk niet). Dit kwam ik tegen tijdens #388.
### Why?
Dat is onhandig als je iemand wil toevoegen ...### One-sentence description
Het is lastig om een mailinglijst te vinden op basis van een alias (ctlr+F in het overzicht werkt dan natuurlijk niet). Dit kwam ik tegen tijdens #388.
### Why?
Dat is onhandig als je iemand wil toevoegen aan een lijst op basis van de naam.
### Current implementation
Het overzicht in /admin toont alleen de lijst met lijstnamen.
### Desired implementation
Een zoekveld toevoegen dat aliassen doorzoekt, of de aliassen in een kolommetje in het overzicht weergeven zodat ctrl+f genoeg is.https://gitlab.science.ru.nl/thalia/concrexit/-/issues/420Small mistakes in board memberships on profile pages2017-12-10T21:12:52+01:00Joren VranckenSmall mistakes in board memberships on profile pages### One-sentence description
There are translation mistakes, a date format mistake and confusing end dates in the board membership on profile pages.
### Why?
In the case that the board member did not stop before the end of the year,...### One-sentence description
There are translation mistakes, a date format mistake and confusing end dates in the board membership on profile pages.
### Why?
In the case that the board member did not stop before the end of the year, the start and end date are redundant, because the relevant year is stated in bold.
In the case that the board member did stop before the end of the year, the end date is a bit confusing.
For example, [the profile of Simon Brugman](https://thalia.nu/members/profile/884) says:
> **Secretaris [tot 2015-02-13]**: Sept. 1, 2012 - Aug. 31, 2013 `
Which contains two different end dates: `2015-02-13` and `Aug. 31, 2013`.
### Current implementation
Two end dates, one for the end of the board itself (`Aug. 31, 2013` in the example) and one for the end of the board membership (`2015-02-13` in the example).
The words `tot` and `bestuur` are not translated on the page.
In the example the format of `2015-02-13` is wrong and should (presumably) be `15-02-2013`
### Desired implementation
- Remove the start and end date for boards.
- Fix the end date format for board memberships that ended before the end of the year.
- Fix the translation of the words `bestuur` and `tot`https://gitlab.science.ru.nl/thalia/concrexit/-/issues/395Refactor thumbnails2019-02-10T13:29:22+01:00Thom WiggersRefactor thumbnailsThey are currently generated in rather complicated ways. We also have too many variants of thumbnails. The back-and-forth with quote, unquote, reverse and redirect are very unwieldy and hard to comprehend. They are also a source of vulne...They are currently generated in rather complicated ways. We also have too many variants of thumbnails. The back-and-forth with quote, unquote, reverse and redirect are very unwieldy and hard to comprehend. They are also a source of vulnerabilities.Luko van der MaasLuko van der Maashttps://gitlab.science.ru.nl/thalia/concrexit/-/issues/321Write newsletter HTML to database on sending2019-03-27T20:38:47+01:00Joost Rijneveldjoost@joostrijneveld.nlWrite newsletter HTML to database on sending### One-sentence description
Write newsletter HTML to database or static document after sending
### Why?
To make sure it stays the same over time.
### Current implementation
It's generated when the web preview is opened
### Desired...### One-sentence description
Write newsletter HTML to database or static document after sending
### Why?
To make sure it stays the same over time.
### Current implementation
It's generated when the web preview is opened
### Desired implementation
Save the email to the database and serve that HTML
---
De sortering is anders (dat is misschien opgelost met #179), maar bovendien bevat de online versie een extra stukje tekst onderaan; (_"Is this email not in your preferred language? [..] in the language you selected."_)
Ik stel voor die tekst een paar letterpuntjes kleiner te maken (en misschien iets minder langdradig te maken door de laatste zin weg te laten), en dan ook in de nieuwsbrief mee te sturen.
Verder lijkt er inconsistentie te zitten tussen de boete-bedragen; in de mail van week 6 die ik ontving wordt expliciet een boete van 5 euro genoemd bij het symposium, maar dat is in de online-versie niet terug te vinden.
**Essentie van het verhaal:** ik weet niet goed hoe die online preview tot stand komt, maar het lijkt me belangrijk om 'm te "bevriezen" zodra de nieuwsbrief daadwerkelijk verstuurd is, door gewoon ergens wat statische HTML weg te schrijven. Dan voorkom je dit soort gedoe fundamenteel, ipv door de individuele dingen te moeten tackelen.Michiel KraanMichiel Kraanhttps://gitlab.science.ru.nl/thalia/concrexit/-/issues/310Set is_staff to False for old board members2019-09-11T20:14:01+02:00Joost Rijneveldjoost@joostrijneveld.nlSet is_staff to False for old board members### One-sentence description
Set is_staff to False for old board members
### Why?
This follows from the dicussion in !335 but it is not clear how and if this should be solved.
This issue was created so that we could think about this a...### One-sentence description
Set is_staff to False for old board members
### Why?
This follows from the dicussion in !335 but it is not clear how and if this should be solved.
This issue was created so that we could think about this and discuss this with everyone.
### Current implementation
`is_staff` is set to True for everyone who becomes a board member and is never set to False because board memberships don't end. This is also the reason why committee membership end dates cannot be in the future, since it sets `is_staff` to False if applicable.
### Desired implementation
Do nothing
or
Set it to False using a Celery task or cronjob for examplehttps://gitlab.science.ru.nl/thalia/concrexit/-/issues/291Test sitemap in unit tests2019-02-10T17:20:33+01:00Joost Rijneveldjoost@joostrijneveld.nlTest sitemap in unit testsThe sitemap is quite vulnerable to `NoReverseMatch` exceptions when the URL scheme changes. A test case that tries to access the sitemap would likely reveal these errors preemptively (but it would require fixtures to be fairly complete, ...The sitemap is quite vulnerable to `NoReverseMatch` exceptions when the URL scheme changes. A test case that tries to access the sitemap would likely reveal these errors preemptively (but it would require fixtures to be fairly complete, as such errors might not trigger when parts of the database are empty).https://gitlab.science.ru.nl/thalia/concrexit/-/issues/142Separate build settings from defaults2019-09-04T14:20:24+02:00Joost Rijneveldjoost@joostrijneveld.nlSeparate build settings from defaultsCurrently we depend on `django_template_check` for the build, as it runs a test we would like to run during CI. This application provides a management command when installed. However, this means that it is installed in production (and de...Currently we depend on `django_template_check` for the build, as it runs a test we would like to run during CI. This application provides a management command when installed. However, this means that it is installed in production (and development) environments as well, needlessly cluttering `requirements.txt` and `INSTALLED_APPS`. This may be a more general problem that can be fixed by re-thinking the way we manage settings (without introducing duplication).https://gitlab.science.ru.nl/thalia/concrexit/-/issues/29Tightly couple django and mailman2018-03-26T15:57:40+02:00Joost Rijneveldjoost@joostrijneveld.nlTightly couple django and mailmanIssue #25 implements the old API that gets called in a cronjob, firing a Python script that talks to it over HTTPS. We could replace this:
- either by a cronjob Python script that queries the database directly
- or by a `save()` hand...Issue #25 implements the old API that gets called in a cronjob, firing a Python script that talks to it over HTTPS. We could replace this:
- either by a cronjob Python script that queries the database directly
- or by a `save()` handler that updates mailman when `MailingList` changes
- or at the very least by a more nicely separated API with less GET variables (i.e. not one url route)https://gitlab.science.ru.nl/thalia/concrexit/-/issues/16Delete files when models deleted?2019-05-28T09:31:34+02:00Joost Rijneveldjoost@joostrijneveld.nlDelete files when models deleted?There seems to be an easy system-wide way to accomplish this by installing [django-cleanup](https://github.com/un1t/django-cleanup), but is this something we want for every FileField and ImageField? Is there a scenario where we might ref...There seems to be an easy system-wide way to accomplish this by installing [django-cleanup](https://github.com/un1t/django-cleanup), but is this something we want for every FileField and ImageField? Is there a scenario where we might reference the same logical file from two models?