concrexit merge requestshttps://gitlab.science.ru.nl/thalia/concrexit/-/merge_requests2018-03-15T13:23:00+01:00https://gitlab.science.ru.nl/thalia/concrexit/-/merge_requests/750Add cancel deadline to event details in admin2018-03-15T13:23:00+01:00Sébastiaan VersteegAdd cancel deadline to event details in adminCloses #602
### Short description
Add cancel deadline to event details in admin
### Steps to use this feature
1. Create an event with a cancel deadline
2. View the event in the adminCloses #602
### Short description
Add cancel deadline to event details in admin
### Steps to use this feature
1. Create an event with a cancel deadline
2. View the event in the admin1.15https://gitlab.science.ru.nl/thalia/concrexit/-/merge_requests/788Add committee roles to overview page2018-05-16T19:02:34+02:00Sébastiaan VersteegAdd committee roles to overview pageCloses #604
### Short description
Add committee roles to overview page
### Steps to use this feature
1. Check the committee pagesCloses #604
### Short description
Add committee roles to overview page
### Steps to use this feature
1. Check the committee pages1.15https://gitlab.science.ru.nl/thalia/concrexit/-/merge_requests/751Add confirmation message to events registration cancellation2018-03-20T17:59:40+01:00Sébastiaan VersteegAdd confirmation message to events registration cancellationCloses #590
### Short description
### Steps to use this feature
1. Create an event with registration
2. Register
3. Cancel within the deadlineCloses #590
### Short description
### Steps to use this feature
1. Create an event with registration
2. Register
3. Cancel within the deadline1.15https://gitlab.science.ru.nl/thalia/concrexit/-/merge_requests/791Added &nbsp; for pizza price2018-05-16T19:02:36+02:00Stan DerksenAdded for pizza price- Added non-breaking space between the €-sign and price to prevent it from breaking to a newline- Added non-breaking space between the €-sign and price to prevent it from breaking to a newline1.15https://gitlab.science.ru.nl/thalia/concrexit/-/merge_requests/764Add missing `<hr>` to account page2018-03-29T15:12:00+02:00Sébastiaan VersteegAdd missing `<hr>` to account page#### Previous behaviour
Steps to reproduce:
1. Go to account page
![image](/uploads/57eee0684d7f39d96797d0da3f4e0ddc/image.png)
#### New behaviour
Steps to validate that it works:
1. Go to account page
![image](/uploads/...#### Previous behaviour
Steps to reproduce:
1. Go to account page
![image](/uploads/57eee0684d7f39d96797d0da3f4e0ddc/image.png)
#### New behaviour
Steps to validate that it works:
1. Go to account page
![image](/uploads/df1d5a162a1fd372599b4315fb965ceb/image.png)1.15https://gitlab.science.ru.nl/thalia/concrexit/-/merge_requests/777Add phone and email links to events registrations overview2018-03-28T20:34:43+02:00Sébastiaan VersteegAdd phone and email links to events registrations overviewCloses #617
### Short description
Add phone and email links to events registrations overview
### Steps to use this feature
1. Go to an event's registrations admin overview
![Screen_Shot_2018-03-28_at_20.21.47](/uploads/3bf...Closes #617
### Short description
Add phone and email links to events registrations overview
### Steps to use this feature
1. Go to an event's registrations admin overview
![Screen_Shot_2018-03-28_at_20.21.47](/uploads/3bf2c168d56de15829e93b217b14bae6/Screen_Shot_2018-03-28_at_20.21.47.png)1.15https://gitlab.science.ru.nl/thalia/concrexit/-/merge_requests/795Add search filter to photos api2018-05-16T20:04:04+02:00Sébastiaan VersteegAdd search filter to photos apiCloses no issue
### Short description
Add search filter to photos api
### Steps to use this feature
1. Open the photos API
2. Add a search query to the request
3. ProfitCloses no issue
### Short description
Add search filter to photos api
### Steps to use this feature
1. Open the photos API
2. Add a search query to the request
3. Profit1.15https://gitlab.science.ru.nl/thalia/concrexit/-/merge_requests/745Add separate private thumbnails view for API2018-03-20T18:02:25+01:00Sébastiaan VersteegAdd separate private thumbnails view for APINot completely sure if this is the best solution. It's also possible to just make the normal `private_thumbnails` view an API view with permissions instead of using `login_required`. But that would mean that opening the image without any...Not completely sure if this is the best solution. It's also possible to just make the normal `private_thumbnails` view an API view with permissions instead of using `login_required`. But that would mean that opening the image without any authentication will show the API output instead of an login page.
### Short description
Add separate private thumbnails view for API
### Steps to use this feature
1. Use the appropriate urls from the code to load private thumbnails
2. Same as 1 but using cURL and token authentication.1.15https://gitlab.science.ru.nl/thalia/concrexit/-/merge_requests/776Add sorting to events backend using jQuery tablesorter2018-03-28T19:45:30+02:00Sébastiaan VersteegAdd sorting to events backend using jQuery tablesorterCloses #494
### Short description
Add sorting to events backend using jQuery tablesorter
### Long description
After a conversation with Kirsten and Jan at the wine tasting I was pointed to the fact that the pizza admin (which...Closes #494
### Short description
Add sorting to events backend using jQuery tablesorter
### Long description
After a conversation with Kirsten and Jan at the wine tasting I was pointed to the fact that the pizza admin (which is built in the frontend) has a jQuery table sorting plugin. So I went on an adventure to see if this would be hard to add to the existing backend. And if it would be better than @ghogewind's solution.
So after some experimentation I found that it was fairly easy, adding some JS and CSS.
Previously I thought that replicating Django's sorting capabilities on our custom pages would be best. However, this is so easy and perfectly re-usable (also if Django makes breaking changes) that I think we should consider this instead.
Also, it doesn't need any changes in the code of the views. And doesn't require reloading the page :p
### Steps to use this feature
1. Open an event's registration page.
2. Click or tap a column header for the column you want to sort by.
3. The table is sorted.1.15https://gitlab.science.ru.nl/thalia/concrexit/-/merge_requests/792Allow event cancellations when member has a fine2018-05-16T19:02:36+02:00Tom van BusselAllow event cancellations when member has a fineCloses #627
#### Previous behaviour
Steps to reproduce:
1. Register for an event
2. Get a fine
3. Can no longer cancel the registration created in step 1.
#### New behaviour
Steps to validate that it works:
1. Register for an event
2...Closes #627
#### Previous behaviour
Steps to reproduce:
1. Register for an event
2. Get a fine
3. Can no longer cancel the registration created in step 1.
#### New behaviour
Steps to validate that it works:
1. Register for an event
2. Get a fine
3. Can still longer cancel the registration created in step 1.1.15https://gitlab.science.ru.nl/thalia/concrexit/-/merge_requests/796Allow the album cover to return None when the album has no images2018-05-16T20:02:15+02:00Sébastiaan VersteegAllow the album cover to return None when the album has no images#### Previous behaviour
Steps to reproduce:
1. Add an album without photos
2. Open the photos API
#### New behaviour
Steps to validate that it works:
1. Add an album without photos
2. Open the photos API#### Previous behaviour
Steps to reproduce:
1. Add an album without photos
2. Open the photos API
#### New behaviour
Steps to validate that it works:
1. Add an album without photos
2. Open the photos API1.15https://gitlab.science.ru.nl/thalia/concrexit/-/merge_requests/781Build and test container in CI2018-05-16T19:02:33+02:00Thom WiggersBuild and test container in CICloses #613
### Short description
* Build the docker container in CI
* Build release containers in CI
* Change release scriptCloses #613
### Short description
* Build the docker container in CI
* Build release containers in CI
* Change release script1.15https://gitlab.science.ru.nl/thalia/concrexit/-/merge_requests/790Disable pipconflictchecker and include a check if the requirements are up to ...2018-05-16T19:02:36+02:00Thom WiggersDisable pipconflictchecker and include a check if the requirements are up to date into CI.### Short description
* Disable pipconflictchecker: #631
* Include `safety check` to check if our deps are somewhat up to date### Short description
* Disable pipconflictchecker: #631
* Include `safety check` to check if our deps are somewhat up to date1.15https://gitlab.science.ru.nl/thalia/concrexit/-/merge_requests/747Fix event title overflows with indicator2018-03-15T13:24:23+01:00Sébastiaan VersteegFix event title overflows with indicatorCloses #596
#### Previous behaviour
Steps to reproduce:
1. View the site on a small viewport
#### New behaviour
Steps to validate that it works:
1. View the site on a small viewportCloses #596
#### Previous behaviour
Steps to reproduce:
1. View the site on a small viewport
#### New behaviour
Steps to validate that it works:
1. View the site on a small viewport1.15https://gitlab.science.ru.nl/thalia/concrexit/-/merge_requests/783Fix link to minutes in meetingyear.html2018-04-05T14:20:03+02:00Sébastiaan VersteegFix link to minutes in meetingyear.htmlCloses #620
#### Previous behaviour
Steps to reproduce:
1. Try to open the minutes of a GM
#### New behaviour
Steps to validate that it works:
1. Try to open the minutes of a GMCloses #620
#### Previous behaviour
Steps to reproduce:
1. Try to open the minutes of a GM
#### New behaviour
Steps to validate that it works:
1. Try to open the minutes of a GM1.15https://gitlab.science.ru.nl/thalia/concrexit/-/merge_requests/785Fix membership renewal page when user has no previous memberships2018-05-16T19:02:35+02:00Sébastiaan VersteegFix membership renewal page when user has no previous membershipsCloses #622
#### Previous behaviour
Steps to reproduce:
1. Create a user without memberships
2. Go to the renewal page
#### New behaviour
Steps to validate that it works:
1. Create a user without memberships
2. Go to the ...Closes #622
#### Previous behaviour
Steps to reproduce:
1. Create a user without memberships
2. Go to the renewal page
#### New behaviour
Steps to validate that it works:
1. Create a user without memberships
2. Go to the renewal page1.15https://gitlab.science.ru.nl/thalia/concrexit/-/merge_requests/769Fix multiple issues with Pizza Events2018-03-28T19:45:32+02:00Thom WiggersFix multiple issues with Pizza EventsCloses #606
#### Previous behaviour
* Crash when handling multiple pizza events
* Allow creating pizza events with end < start
* Don't allow consecutive pizza events
#### New behaviour
Steps to validate that it works:
* R...Closes #606
#### Previous behaviour
* Crash when handling multiple pizza events
* Allow creating pizza events with end < start
* Don't allow consecutive pizza events
#### New behaviour
Steps to validate that it works:
* Run tests1.15https://gitlab.science.ru.nl/thalia/concrexit/-/merge_requests/786Fix typo on renewal page2018-05-16T19:02:33+02:00Sébastiaan VersteegFix typo on renewal pageCloses #623Closes #6231.15https://gitlab.science.ru.nl/thalia/concrexit/-/merge_requests/757Fix uploading gifs2018-03-20T17:34:35+01:00Thom WiggersFix uploading gifsCloses #610
#### Previous behaviour
Steps to reproduce:
1. upload GIF avatar or photo
2. OSError exception about the image conversion
#### New behaviour
Steps to validate that it works:
1. upload GIF avatar or photo
2. observe it wo...Closes #610
#### Previous behaviour
Steps to reproduce:
1. upload GIF avatar or photo
2. OSError exception about the image conversion
#### New behaviour
Steps to validate that it works:
1. upload GIF avatar or photo
2. observe it works.1.15https://gitlab.science.ru.nl/thalia/concrexit/-/merge_requests/778Get mailinglist api secret from env variables2018-03-28T19:45:30+02:00Joren VranckenGet mailinglist api secret from env variablesAs discussed on slack, it is better to get the mailinglist api secret from the environment variables, because it allows us the easier change the secret.
[The serverconfig MR](serverconfig!190)As discussed on slack, it is better to get the mailinglist api secret from the environment variables, because it allows us the easier change the secret.
[The serverconfig MR](serverconfig!190)1.15