concrexit issueshttps://gitlab.science.ru.nl/thalia/concrexit/-/issues2019-09-17T12:10:21+02:00https://gitlab.science.ru.nl/thalia/concrexit/-/issues/924Add the real name of members to profiles2019-09-17T12:10:21+02:00Ward TheunisseAdd the real name of members to profiles/label ~feature ~"priority: low"
<!--
You want something new.
-->
### One-sentence description
Add the real name of members to profiles
### Motivation
Because you cannot see who someone really is.
### Desired functionality
Add.../label ~feature ~"priority: low"
<!--
You want something new.
-->
### One-sentence description
Add the real name of members to profiles
### Motivation
Because you cannot see who someone really is.
### Desired functionality
Add the real name of members to profiles.
### Suggested implementation
Some text.
27https://gitlab.science.ru.nl/thalia/concrexit/-/issues/250Build an announcement feature2018-11-25T01:45:49+01:00Luuk ScholtenBuild an announcement featureThis could be useful to alert our users about existing bugs, new releases etc.
Could be implemented like https://www.swapps.io/blog/simply-django-announcements/This could be useful to alert our users about existing bugs, new releases etc.
Could be implemented like https://www.swapps.io/blog/simply-django-announcements/Joost Rijneveldjoost@joostrijneveld.nlJoost Rijneveldjoost@joostrijneveld.nlhttps://gitlab.science.ru.nl/thalia/concrexit/-/issues/950Statistics names are shown wrong2019-11-20T21:16:14+01:00Thijs de JongStatistics names are shown wrong### One-sentence description
The statistics for ``number of members per committee`` shows the names wrong.
### Current behaviour / Reproducing the bug
The statistics for ``number of members per committee`` shows names of the committee u...### One-sentence description
The statistics for ``number of members per committee`` shows the names wrong.
### Current behaviour / Reproducing the bug
The statistics for ``number of members per committee`` shows names of the committee underneath the bars, but not underneath every bar. Only per 2 bars, and when there are more committees, there are less and less committee names.
### Expected behaviour
Every bar has a name underneath it.Marthijn van den NieuwenhuizenMarthijn van den Nieuwenhuizenhttps://gitlab.science.ru.nl/thalia/concrexit/-/issues/911Add descriptions to mailing lists2019-09-25T21:23:43+02:00Sébastiaan VersteegAdd descriptions to mailing lists### One-sentence description
Descriptions for mailing lists
### Motivation
Because we forget what mailing lists are for and this would help with the administration
### Desired functionality
Description field. REQUIRED (because other...### One-sentence description
Descriptions for mailing lists
### Motivation
Because we forget what mailing lists are for and this would help with the administration
### Desired functionality
Description field. REQUIRED (because otherwise people leave it empty)
### Suggested implementation
A TextArea!Luna-Elise SchernthanerLuna-Elise Schernthanerhttps://gitlab.science.ru.nl/thalia/concrexit/-/issues/818Remove SECRET_KEY from production.py2019-02-07T16:26:12+01:00Jelle Besselingjelle@pingiun.comRemove SECRET_KEY from production.py<!--
This template is for changes that do not affect the behaviour of the website.
Examples:
* Changes in CI
* Refactoring of code
* Technicie-facing documentation
-->
### One-sentence description
Remove defaul...<!--
This template is for changes that do not affect the behaviour of the website.
Examples:
* Changes in CI
* Refactoring of code
* Technicie-facing documentation
-->
### One-sentence description
Remove default SECRET_KEY value from production.py settings
### Why?
The SECRET_KEY should always be set in production.py, so it is a better idea to crash when it isn't set, than to use a default nonsecure key.
### Current implementation
A default key is set in production.py. (https://gitlab.science.ru.nl/thalia/concrexit/blob/23b79eb4461ac082a94d7a0c4318c0a848743c67/website/thaliawebsite/settings/production.py#L29)
### Suggested implementation
```python
SECRET_KEY = os.environ.get('DJANGO_SECRET')
```
or, the following, which throws an IndexError when the key isn't present
```python
SECRET_KEY = os.environ.environ['DJANGO_SECRET']
```https://gitlab.science.ru.nl/thalia/concrexit/-/issues/765Remind people to fill in full descriptions in both languages in the event bac...2018-11-14T21:53:23+01:00Gijs HendriksenRemind people to fill in full descriptions in both languages in the event backend### One-sentence description
Add a reminder to the event description fields that people need to fill in the descriptions in both languages.
### Motivation
Some Dutch-only events have an English description "This event is in Dutch", wi...### One-sentence description
Add a reminder to the event description fields that people need to fill in the descriptions in both languages.
### Motivation
Some Dutch-only events have an English description "This event is in Dutch", without the actual Dutch description. This forces people to change their language to Dutch if they want to see the description.
See also ThaliApp#84.
### Desired functionality
A small notice at the description input fields, with something along the lines of "Don't forget to include a full description in both languages!".Thijs de JongThijs de Jonghttps://gitlab.science.ru.nl/thalia/concrexit/-/issues/749Member list category benefactors2018-10-31T18:46:02+01:00Job DoesburgMember list category benefactors<!--
You want something new.
-->
### One-sentence description
Add benefactors as category to member list.
### Motivation
Currently it's inconsistent. There is a category 'honorary members' and even 'old members' but no 'benefacto...<!--
You want something new.
-->
### One-sentence description
Add benefactors as category to member list.
### Motivation
Currently it's inconsistent. There is a category 'honorary members' and even 'old members' but no 'benefactors' whereas it really is a separate group Thalians.
### Desired functionality
Also have a tab 'benefactors' at the members list page.
### Suggested implementation
I think this is quite clear.https://gitlab.science.ru.nl/thalia/concrexit/-/issues/740Registrations input validation student number auto capitalize2018-12-05T19:47:12+01:00Job DoesburgRegistrations input validation student number auto capitalize<!--
This template is for changes that do not affect the behaviour of the website.
Examples:
* Changes in CI
* Refactoring of code
* Technicie-facing documentation
-->
### One-sentence description
Automatically...<!--
This template is for changes that do not affect the behaviour of the website.
Examples:
* Changes in CI
* Refactoring of code
* Technicie-facing documentation
-->
### One-sentence description
Automatically convert student numbers to correct capitalization
### Why?
Especially on mobile devices, when entering a student number in the registration form, it starts with an capital S while only a small letter s is accepted (or the other way around, sorry I don't know). It would be nice to just accept both and convert it automatically. Same for people just entering a 7-digit number without prefix s.
### Current implementation
Only certain capitalization is accepted.
### Suggested implementation
Accept all CaPiTaliZatIoN and convert it automatically to a specific format.20Thijs de JongThijs de Jonghttps://gitlab.science.ru.nl/thalia/concrexit/-/issues/739Change dropdown menu in front-end for user registration/enrollment with amount2018-11-14T21:53:41+01:00Job DoesburgChange dropdown menu in front-end for user registration/enrollment with amount<!--
This template is for changes that do not affect the behaviour of the website.
Examples:
* Changes in CI
* Refactoring of code
* Technicie-facing documentation
-->
### One-sentence description
Display the p...<!--
This template is for changes that do not affect the behaviour of the website.
Examples:
* Changes in CI
* Refactoring of code
* Technicie-facing documentation
-->
### One-sentence description
Display the price of membership type in the dropdown menu of front-end registration page.
### Why?
People are lazy. They don't read the whole text and only fill in the form. They select 'study membership' and when they want to pay, they see it is more expensive. That's annoying because you have to change data afterwards (which can't be done a.t.m. after approval).
### Current implementation
The dropdown menu only shows 'one year membership' and 'study membership'
### Suggested implementation
The dropdown menu shows 'one year membership (€ 7,50)' and 'study membership (€ 30,00)'Bart HofmanBart Hofmanhttps://gitlab.science.ru.nl/thalia/concrexit/-/issues/447Send queue mail wordt verzonden als iemand op de wachtrij zich afmeldt2017-07-05T19:24:09+02:00Sietse MoorenSend queue mail wordt verzonden als iemand op de wachtrij zich afmeldt### One-sentence description
Send queue mail wordt verzonden als iemand op de wachtrij zich afmeldt
### Current behaviour
Als iemand in de wachtrij zichzelf er vanaf haalt wordt `_send_queue_mail` nog steeds uitgevoerd
### Expe...### One-sentence description
Send queue mail wordt verzonden als iemand op de wachtrij zich afmeldt
### Current behaviour
Als iemand in de wachtrij zichzelf er vanaf haalt wordt `_send_queue_mail` nog steeds uitgevoerd
### Expected behaviour
Als iemand in de wachtrij zichzelf er vanaf haalt wordt er geen mail verstuurd
### Steps to reproduce
1. Maak een event met max participants
2. Voeg aantal registrations toe
3. Cancel registration in de frontend van een van de gebruikers
4. Zie verzonden mail
### Original text
Je krijgt een mail dat je in de wachtlijst stond maar nu mag gaan. Als je vervolgens naar de link gaat die in de mail staat sta je nog steeds in de wachtrij. Wat moet ik nu geloven.https://gitlab.science.ru.nl/thalia/concrexit/-/issues/426De photo-app is niet tweetalig2017-12-10T21:23:58+01:00Tom van BusselDe photo-app is niet tweetaligDe titels van albums zijn niet tweetalig.De titels van albums zijn niet tweetalig.https://gitlab.science.ru.nl/thalia/concrexit/-/issues/379Make event.organiser NOT NULL2017-12-10T21:23:58+01:00Thom WiggersMake event.organiser NOT NULLNow that every event has an organiser, the field should be set to NOT NULL. This would also allow a relaxation of the constraint checking we're doing in various places (see !431 !440)Now that every event has an organiser, the field should be set to NOT NULL. This would also allow a relaxation of the constraint checking we're doing in various places (see !431 !440)Thom WiggersThom Wiggershttps://gitlab.science.ru.nl/thalia/concrexit/-/issues/369Ledenlijst2018-11-25T01:45:51+01:00Joren VranckenLedenlijstBij de ledenlijst staat het volgende stukje:
> Wel eens op zoek naar de naam van die persoon die je altijd in de gangen ziet lopen? Of alleen naar het e-mailadres van een klasgenoot? Of misschien wil je wel het telefoonnummer van iema...Bij de ledenlijst staat het volgende stukje:
> Wel eens op zoek naar de naam van die persoon die je altijd in de gangen ziet lopen? Of alleen naar het e-mailadres van een klasgenoot? Of misschien wil je wel het telefoonnummer van iemand weten die je echt dringend wil spreken. Er bestaat een grote kans dat die persoon lid van Thalia is, en dus is opgenomen in de onderstaande ledenlijst.
Gezien dat medestudenten geen klasgenoten zijn, we geen telefoonnummers tonen en geen e-mailadressen tonen, mag dit stukje aangepast worden.https://gitlab.science.ru.nl/thalia/concrexit/-/issues/368volgorde vacatures2017-12-10T21:23:57+01:00Evi Sijbenvolgorde vacaturesVanuit een sponsor kreeg ik de vraag of de volgorde van de vacatures zou kunnen worden aangepast.
Volgens mij is het nu het geval dat de vacatures op volgorde worden gezet waarin ze op de website zijn gezet.
Gezien sponsoren vaak de vac...Vanuit een sponsor kreeg ik de vraag of de volgorde van de vacatures zou kunnen worden aangepast.
Volgens mij is het nu het geval dat de vacatures op volgorde worden gezet waarin ze op de website zijn gezet.
Gezien sponsoren vaak de vacature bekijken wanneer hij net geplaatst is, is het misschien beter de volgorde precies om te draaien.
Anders zou je ze natuurlijk ook nog random kunnen husselen zoals bij de bedrijfsprofielenpagina.
Zouden jullie hierin iets kunnen veranderen?https://gitlab.science.ru.nl/thalia/concrexit/-/issues/317Banners zijn overal hetzelfde2017-12-13T12:44:17+01:00Thom WiggersBanners zijn overal hetzelfdePre-concrexit waren die per 'sectie' van de site anders.Pre-concrexit waren die per 'sectie' van de site anders.https://gitlab.science.ru.nl/thalia/concrexit/-/issues/314Styleguide downloads contain __MACOSX folders2018-11-25T01:45:51+01:00Wietse KuipersStyleguide downloads contain __MACOSX foldersThis doesn't seem neccesaryThis doesn't seem neccesaryWietse KuipersWietse Kuipershttps://gitlab.science.ru.nl/thalia/concrexit/-/issues/86Zoeken in members werkt alleen als de keywords lowercase zijn2016-10-05T23:28:25+02:00Jelle Besselingjelle@pingiun.comZoeken in members werkt alleen als de keywords lowercase zijnBij het zoeken worden de keywords vergeleken met de lowercase namen, usernames en nicknames. Dus als gebruikers hoofdletters gebruiken in zoektermen komen er nooit resultaten. Keywords moeten ook lowercase gemaakt worden om search te lat...Bij het zoeken worden de keywords vergeleken met de lowercase namen, usernames en nicknames. Dus als gebruikers hoofdletters gebruiken in zoektermen komen er nooit resultaten. Keywords moeten ook lowercase gemaakt worden om search te laten werken.LaunchSébastiaan VersteegSébastiaan Versteeghttps://gitlab.science.ru.nl/thalia/concrexit/-/issues/85Zoeken in /members gooit exception als iemand NULL als nickname heeft2016-10-05T23:28:25+02:00Jelle Besselingjelle@pingiun.comZoeken in /members gooit exception als iemand NULL als nickname heeftSearch zoekt in de database op first_name, last_name, username en nickname. Nicknames zijn echter niet verplicht, dus de lijn `keywords in obj.nickname.lower() or` werkt niet als iemand NULL heeft als username.
In een echt scenario z...Search zoekt in de database op first_name, last_name, username en nickname. Nicknames zijn echter niet verplicht, dus de lijn `keywords in obj.nickname.lower() or` werkt niet als iemand NULL heeft als username.
In een echt scenario zullen mensen '' hebben als nickname en niet NULL, maar geautomatiseerde tools (zoals createfixtures) zetten lege velden op NULL.
Informatie over de exception:
```
Exception Type: AttributeError
Exception Value:
'NoneType' object has no attribute 'lower'
Exception Location: /home/pingiun/Documents/jbconcrexit/website/members/views.py in <listcomp>, line 55
```
De lijnen waar het om gaat:
```python
53 if keywords:
54 members = [obj for obj in members if
55 keywords in obj.nickname.lower() or
56 keywords in obj.user.first_name.lower() or
57 keywords in obj.user.last_name.lower() or
58 keywords in obj.user.username.lower()]
```LaunchSébastiaan VersteegSébastiaan Versteeghttps://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/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 Nieuwenhuizen