concrexit issueshttps://gitlab.science.ru.nl/thalia/concrexit/-/issues2018-11-14T18:52:53+01:00https://gitlab.science.ru.nl/thalia/concrexit/-/issues/724Update Fancybox to version 32018-11-14T18:52:53+01:00Sébastiaan VersteegUpdate Fancybox to version 3### One-sentence description
Update Fancybox to version 3
### Why?
We currently use an old version (2.x). However, this version is licensed under CC BY-NC 3.0. Version 3 is GPLv3 for open source projects only. So I think this can be d...### One-sentence description
Update Fancybox to version 3
### Why?
We currently use an old version (2.x). However, this version is licensed under CC BY-NC 3.0. Version 3 is GPLv3 for open source projects only. So I think this can be done only after fully open sourcing. [Their website](http://fancyapps.com/fancybox/3/#license) is unclear:
> fancybox is licensed under the GPLv3 license for all open source applications.
A commercial license is required for all commercial applications (including sites, themes and apps you plan to sell).
¿Our website is non-commercial but not open source?
### Current implementation
Fancybox 2.x
### Desired implementation
Fancybox 3.x20Sébastiaan VersteegSébastiaan Versteeghttps://gitlab.science.ru.nl/thalia/concrexit/-/issues/722Add search functionality to photo albums2018-11-14T23:04:28+01:00Sébastiaan VersteegAdd search functionality to photo albums### One-sentence description
Add search functionality to photo albums
### Desired behaviour
Being able to search### One-sentence description
Add search functionality to photo albums
### Desired behaviour
Being able to search20Sébastiaan VersteegSébastiaan Versteeghttps://gitlab.science.ru.nl/thalia/concrexit/-/issues/667Make the starting year field in the registration form a dropdown2018-08-07T12:34:14+02:00Sébastiaan VersteegMake the starting year field in the registration form a dropdown### One-sentence description
Make the starting year field in the registration form a dropdown
### Why?
To prevent weird values being entered
### Current implementation
It's an integer field
### Desired implementation
Dropdown!### One-sentence description
Make the starting year field in the registration form a dropdown
### Why?
To prevent weird values being entered
### Current implementation
It's an integer field
### Desired implementation
Dropdown!1.16.2https://gitlab.science.ru.nl/thalia/concrexit/-/issues/639Thabloid preview blokken zijn stuk2018-06-13T18:59:42+02:00Thom WiggersThabloid preview blokken zijn stuk### One-sentence description
![image](/uploads/131d6741fff0fef893e094ca03cb0cb1/image.png)
### Current behaviour
![image](/uploads/0b85b57ed28a56555c66617efd95ab48/image.png)
### Expected behaviour
niet
![image](/uploads/975646e501248886...### One-sentence description
![image](/uploads/131d6741fff0fef893e094ca03cb0cb1/image.png)
### Current behaviour
![image](/uploads/0b85b57ed28a56555c66617efd95ab48/image.png)
### Expected behaviour
niet
![image](/uploads/975646e5012488860a3af636a92813bd/image.png)
### Steps to reproduce
1. https://thalia.nu/thabloid/1.16https://gitlab.science.ru.nl/thalia/concrexit/-/issues/628Event presence (from admin pages) visible for normal users2018-05-23T19:22:39+02:00Ivar DerksenEvent presence (from admin pages) visible for normal users### One-sentence description
The value of the presence checkbox from the admin event pages should be visible on the event page of the regular website (and maybe the app)
### Desired behaviour
For the orientation barbecue we have to be ...### One-sentence description
The value of the presence checkbox from the admin event pages should be visible on the event page of the regular website (and maybe the app)
### Desired behaviour
For the orientation barbecue we have to be able to take account of all people that are present at the barbecue. This in order to be able to fine people when they registered and did not show up. This was an issue last year. With the high number of people at the barbecue it is very likely that we will not be able to check presence for anyone.
Therefore, inspired by the pizza system from borrels, it would be nice if people can see whether we checked their presence. Then people can come to us and complain if we missed them immediately. Then we can simply say to members, if you are at the barbecue, make sure the light on the website turns green. Otherwise you will get the fine for not being present. (Of course this does not hold for the new first year students)
I think it is just making a field from the database visible on the website, so I think this should not be very complicated.1.16https://gitlab.science.ru.nl/thalia/concrexit/-/issues/1034Missing singlepages translations2020-03-13T16:29:15+01:00Joren VranckenMissing singlepages translations### Description
Add all missing singlepages translations.
After I run `../manage.py makemessages --locale nl --no-obsolete` in `website/singlepages` 170+ translations seem to be missing.### Description
Add all missing singlepages translations.
After I run `../manage.py makemessages --locale nl --no-obsolete` in `website/singlepages` 170+ translations seem to be missing.https://gitlab.science.ru.nl/thalia/concrexit/-/issues/1025ValueError: day is out of range for month2020-03-04T20:22:40+01:00Thalia TechnicieValueError: day is out of range for monthSentry Issue: [CONCREXIT-24](https://sentry.io/organizations/thalia/issues/1538288408/?referrer=gitlab_integration)
```
ValueError: day is out of range for month
(11 additional frame(s) were not displayed)
...
File "rest_framework/ser...Sentry Issue: [CONCREXIT-24](https://sentry.io/organizations/thalia/issues/1538288408/?referrer=gitlab_integration)
```
ValueError: day is out of range for month
(11 additional frame(s) were not displayed)
...
File "rest_framework/serializers.py", line 260, in data
self._data = self.to_representation(self.instance)
File "rest_framework/serializers.py", line 529, in to_representation
ret[field.field_name] = field.to_representation(attribute)
File "rest_framework/fields.py", line 1905, in to_representation
return method(value)
File "members/api/serializers.py", line 93, in _achievements
return member_achievements(instance.user)
File "members/services.py", line 72, in member_achievements
earliest = earliest.replace(year=earliest.year + mentor_year.year)
```Marie SimonMarie Simonhttps://gitlab.science.ru.nl/thalia/concrexit/-/issues/1023Add wiki page about Concrexit Docker images2020-02-29T11:43:48+01:00Joren VranckenAdd wiki page about Concrexit Docker images### One-sentence description
Explain how the current Concrexit Docker images are built and what they are used for.### One-sentence description
Explain how the current Concrexit Docker images are built and what they are used for.Joren VranckenJoren Vranckenhttps://gitlab.science.ru.nl/thalia/concrexit/-/issues/1022Add wiki page about Renovate2020-02-28T12:10:47+01:00Joren VranckenAdd wiki page about Renovate### One-sentence description
Add wiki page about Renovate.
### Why?
It is important to have documentation about the third-party applications we use.### One-sentence description
Add wiki page about Renovate.
### Why?
It is important to have documentation about the third-party applications we use.https://gitlab.science.ru.nl/thalia/concrexit/-/issues/1021Replace Docker image used by Renovate2020-02-28T12:09:51+01:00Joren VranckenReplace Docker image used by Renovate### One-sentence description
Replace Docker image used by Renovate.
### Why?
Apparently Renovate still uses [`thalia/python-thalia`](https://hub.docker.com/r/thalia/python-thalia). `thalia/python-thalia` is outdated and not automaticall...### One-sentence description
Replace Docker image used by Renovate.
### Why?
Apparently Renovate still uses [`thalia/python-thalia`](https://hub.docker.com/r/thalia/python-thalia). `thalia/python-thalia` is outdated and not automatically updated.
### Suggested implementation
Either [`renovate/python`](https://hub.docker.com/r/renovate/python) or [`thalia/concrexit-dependencies`](https://hub.docker.com/r/thalia/concrexit-dependencies).https://gitlab.science.ru.nl/thalia/concrexit/-/issues/1020Do not use hardcoded colors for calendar API2020-03-04T17:06:42+01:00Job DoesburgDo not use hardcoded colors for calendar API<!--
This template is for changes that do not affect the behaviour of the website.
** If you are not in the Technicie, there is a very high chance that you
should not use this template
Examples:
* Changes in CI...<!--
This template is for changes that do not affect the behaviour of the website.
** If you are not in the Technicie, there is a very high chance that you
should not use this template
Examples:
* Changes in CI
* Refactoring of code
* Technicie-facing documentation
-->
### One-sentence description
Do not use hardcoded colors for calendar API in `website/members/api/serializers.py` r42-49 and `website/events/api/serializers.py`
### Why?
We shouldn't hardcode these things at the API level but provide them using CSS.
### Current implementation
The API provides a `backgroundColor` and `textColor` in the event sources APIs that is used by FullCalendar via https://fullcalendar.io/docs/events-json-feed. Every item in the feed is an event source object: https://fullcalendar.io/docs/event-source-object.
### Suggested implementation
Provide a `className` attribute instead and determine the background color and text color based on the class using CSS.Marthijn van den NieuwenhuizenMarthijn van den Nieuwenhuizenhttps://gitlab.science.ru.nl/thalia/concrexit/-/issues/1019Move business logic of notifications out of models2020-02-23T16:30:42+01:00Sébastiaan VersteegMove business logic of notifications out of models<!--
This template is for changes that do not affect the behaviour of the website.
** If you are not in the Technicie, there is a very high chance that you
should not use this template
Examples:
* Changes in CI...<!--
This template is for changes that do not affect the behaviour of the website.
** If you are not in the Technicie, there is a very high chance that you
should not use this template
Examples:
* Changes in CI
* Refactoring of code
* Technicie-facing documentation
-->
### One-sentence description
Move business logic of notifications out of models
### Why?
Clean up the models
### Current implementation
Code in the models (mostly events)
### Suggested implementation
Use signalsSébastiaan VersteegSébastiaan Versteeghttps://gitlab.science.ru.nl/thalia/concrexit/-/issues/1017Remove redundant html templates from `/thaliawebsite/templates/singlepages/`2020-03-13T16:29:15+01:00Job DoesburgRemove redundant html templates from `/thaliawebsite/templates/singlepages/`<!--
This template is for changes that do not affect the behaviour of the website.
** If you are not in the Technicie, there is a very high chance that you
should not use this template
Examples:
* Changes in CI...<!--
This template is for changes that do not affect the behaviour of the website.
** If you are not in the Technicie, there is a very high chance that you
should not use this template
Examples:
* Changes in CI
* Refactoring of code
* Technicie-facing documentation
-->
### One-sentence description
Remove redundant html templates from `/thaliawebsite/templates/singlepages/`
### Why?
They are redundant, since they are also in `/singlepages/templates` and these are the ones that are used.
### Current implementation
It appears as if the translations are still in `/thaliawebsite` though, so it would probably be nice to move these.
### Suggested implementationMarthijn van den NieuwenhuizenMarthijn van den Nieuwenhuizenhttps://gitlab.science.ru.nl/thalia/concrexit/-/issues/1014Add weekday to newsletter events2020-03-09T22:45:22+01:00Wouter DoelandAdd weekday to newsletter eventsIn the current newsletter, there is only a date and time next to the event. It would be nice if there also was a (week)day there, because most people plan activities based on what day they are.
### One-sentence description
Add the even...In the current newsletter, there is only a date and time next to the event. It would be nice if there also was a (week)day there, because most people plan activities based on what day they are.
### One-sentence description
Add the event day to events in the newsletter.
### Motivation
This change would make it more easy to plan events if you just read the newsletter from time to time.
### Desired functionality
Add the (week)day to the event info in the newsletter.
### Suggested implementation
WHERE
HG00.307
WHEN
Feb. 11, 2020, 12:15 p.m. - 13:15
PRICE
Free
->
WHERE
HG00.307
WHEN
Tue, Feb. 11, 2020, 12:15 p.m. - 13:15
PRICE
FreeWouter DoelandWouter Doelandhttps://gitlab.science.ru.nl/thalia/concrexit/-/issues/1013Prevent payment cancellation when payment in batch2020-03-09T17:59:50+01:00Job DoesburgPrevent payment cancellation when payment in batch### One-sentence description
Prevent payment cancellation / changes when payment in batch
### Why?
When a payment is added to a payment batch (#932), it must stay in there and may not be changed or deleted anymore.
### Current implem...### One-sentence description
Prevent payment cancellation / changes when payment in batch
### Why?
When a payment is added to a payment batch (#932), it must stay in there and may not be changed or deleted anymore.
### Current implementation
This might be possible
### Suggested implementationhttps://gitlab.science.ru.nl/thalia/concrexit/-/issues/1012Export payment batch per topic / event2020-02-12T20:42:04+01:00Job DoesburgExport payment batch per topic / event### One-sentence description
Export payment batch per topic / event
### Motivation
Required for bookkeeping of Thalia Pay
### Desired functionality
Use the `payment_topic` from Payments, provided by `Payable` models
### Suggested i...### One-sentence description
Export payment batch per topic / event
### Motivation
Required for bookkeeping of Thalia Pay
### Desired functionality
Use the `payment_topic` from Payments, provided by `Payable` models
### Suggested implementation
Extend #932 with a second way of exportinghttps://gitlab.science.ru.nl/thalia/concrexit/-/issues/1011Use create_payment everywhere2020-03-09T17:59:50+01:00Job DoesburgUse create_payment everywhere### One-sentence description
Use create_payment (from #1010 ) everywhere where we use payments
### Why?
Prevent code duplication
### Current implementation
Shitty, chaotic, anarchy, tears
### Suggested implementation
Make models P...### One-sentence description
Use create_payment (from #1010 ) everywhere where we use payments
### Why?
Prevent code duplication
### Current implementation
Shitty, chaotic, anarchy, tears
### Suggested implementation
Make models Payable (implement the interface / abstract class from #1010) and use `create_payment` as the only way to interact with / create payments.https://gitlab.science.ru.nl/thalia/concrexit/-/issues/1010Create Payable interface2020-03-04T19:09:01+01:00Job DoesburgCreate Payable interface### One-sentence description
Create a Payable interface to be used for all models that use Payments
### Why?
To prevent code duplication and improve testing
### Current implementation
Shitty, chaotic, anarchy, tears
### Suggested i...### One-sentence description
Create a Payable interface to be used for all models that use Payments
### Why?
To prevent code duplication and improve testing
### Current implementation
Shitty, chaotic, anarchy, tears
### Suggested implementation
Payable abstract class with `@property @abstractmethod`s:
- `payment_amount` as the amount of the payment
- `payment_topic` as the grouping key for the type of payment (ledger information)
- `payment_notes` for the user specific details
- `payment_payer` for the user paying
Payments must then have a constructor `create_payment` that takes as arguments:
- a `Payable` object
- a payment `processor` that is the person that processes the payment
- the payment `type` being either thalia pay, card, cash or wire transfer (no None anymore!)Sébastiaan VersteegSébastiaan Versteeghttps://gitlab.science.ru.nl/thalia/concrexit/-/issues/1009Improve tests for Payments app2020-02-12T20:39:44+01:00Luko van der MaasImprove tests for Payments app### One-sentence description
A lot of tests for payments are either not consistent or do some weird stuff.
### Why?
Better tests helps stability### One-sentence description
A lot of tests for payments are either not consistent or do some weird stuff.
### Why?
Better tests helps stabilitySébastiaan VersteegSébastiaan Versteeghttps://gitlab.science.ru.nl/thalia/concrexit/-/issues/1008Show deregistration disclaimer text even if not registered for event2020-02-23T16:53:09+01:00Job DoesburgShow deregistration disclaimer text even if not registered for event### One-sentence description
The text stating you cannot deregister without paying a fine is not visible if you are not registered for the event.
### Current behaviour / Reproducing the bug
<!-- Please write what is happening and how ...### One-sentence description
The text stating you cannot deregister without paying a fine is not visible if you are not registered for the event.
### Current behaviour / Reproducing the bug
<!-- Please write what is happening and how we could reproduce it, if relevant -->
Currently, the website does not show the deregistration disclaimer if you are not registered. This is undesirable, as it allows users to register for the event, without realising that they cannot deregister without paying a fine.
### Expected behaviour
Always state the disclaimer (just like in the app).
![IMG_753FFE892ACD-1](/uploads/fa6db1596eb92b1e2d5bbaa7a07ae4dd/IMG_753FFE892ACD-1.jpeg)Mark BouteMark Boute