Commit Graph

429 Commits

Author SHA1 Message Date
Raphael Michel
7939503a11 Bulk creation for event series dates (#848)
* copy-from things

* Some frontend

* rrule UI

* .

* Fixes

* UI improvements

* First test

* Tests
2018-04-03 18:21:27 +02:00
Raphael Michel
2c26ccbc72 Fix AttributeError in orders API when questions are in use 2018-03-29 18:20:26 +02:00
Raphael Michel
cfbde151fa Fix relative date calculation around DST dates 2018-03-29 16:46:34 +02:00
Raphael Michel
a284e0c2f7 Add auditable superuser mode (#824)
* Remove is_superuser everywhere

* Session handling

* List of sessions, relative timeout

* Absolute timeout

* Optionally pseudo-force audit comments

* Fix failing tests

* Add tests

* Add docs

* Rebsae migration

* Typos

* Fix tests
2018-03-28 14:16:58 +02:00
Raphael Michel
c9f5828eb9 Stripe: Support for restricted keys 2018-03-26 23:02:23 +02:00
Raphael Michel
28506538a3 Add quick-start assistant for new users (#833)
* First draft for quick-setup

* Add payment

* Fix stripe w/o connect

* cols

* Add tests
2018-03-26 20:52:24 +02:00
Raphael Michel
9ca61f9ef5 Remove left-over print statements from debugging 2018-03-26 10:21:14 +02:00
Raphael Michel
938c7df28a Fix #103 -- Implement Stripe Connect (#836)
* ...

* Upgrade Stripe API client

* Implement account choice

* Add disconnect and fix tests
2018-03-26 10:05:34 +02:00
Raphael Michel
3a7e0da80b Backend UX: Restructure payment settings 2018-03-24 18:18:28 +01:00
Ture Gjørup
b564fe8a0d Refs #654 -- API: Writable category endpoints (#818)
* EBILL-5: Added POST, PATCH, PUT and DELETE for categories

* EBILL-5: Fixed item category not removed on category delete
2018-03-16 14:50:22 +01:00
Raphael Michel
dffc82781b Add writable questions API methods 2018-03-13 09:09:50 +01:00
Raphael Michel
aef77965e7 Fix PATCH method for items 2018-03-13 09:09:50 +01:00
Raphael Michel
f21da0cc2b Add identifier field to questions 2018-03-13 09:09:50 +01:00
Raphael Michel
cb12e1208b Fix failing middleware test 2018-03-10 15:17:54 +01:00
Raphael Michel
5c7e8029f4 Fix incorrect test case 2018-03-02 22:05:56 +01:00
Raphael Michel
578c1ecfaf Add support for custom taxation rules 2018-02-28 23:03:25 +01:00
Raphael Michel
3c3e59e932 Refs #99 -- Improve support for currencies with less than 2 decimal places (#783)
* Refs #99 -- Fix stripe support for zero-decimal currencies

* Add new money formatting method

* Force decimal places in many places

* Locale-aware currency rendering

* Fix currencies in more places

* More currency fixes
2018-02-26 10:46:07 +01:00
Tim Freund
1c01e23867 Name presale index + unit test for URL names (#784)
* Name the default URL

If metrics collection is enabled, the index page of the site will fail
to load: without a name, the metrics middleware throws a TypeError.

* Test for names on all URLs

This test passes if all URLs have names. Without names, URLs will cause
the optional metrics middleware to throw a TypeError.
2018-02-26 10:17:42 +01:00
Raphael Michel
675b853b29 Remove organizer property from ICalendar files as we used it not as it is intended to be used. 2018-02-23 10:51:32 +01:00
Raphael Michel
2434bf14d5 Add checkin_attetion field to Order model 2018-02-22 13:25:26 +01:00
Raphael Michel
3fbccf3f64 Allow check-in lists to include unpaid orders 2018-02-21 16:17:06 +01:00
Raphael Michel
072f2a0ee9 Pin sessions to the user agent in use 2018-02-19 13:02:55 +01:00
Raphael Michel
ded539ce7a Ignore event end date for subevents 2018-02-07 13:51:22 +01:00
Raphael Michel
911a8fed06 Fix waiting list test 2018-02-04 18:28:29 +01:00
Raphael Michel
67678e35bb Disable shop and waiting list after end of event 2018-02-04 14:14:49 +01:00
Raphael Michel
39abf63698 Additional fixes 2018-02-02 10:16:23 +01:00
Raphael Michel
f68a6d1119 Fix redirect assertions 2018-02-01 18:13:59 +01:00
Ture Gjørup
8eaada992f Refs #654 -- API: Writable item endpoints (#676)
* MKBDIGI-184: Basic create added for API items endpoint

* MKBDIGI-184: Starting endpoint for GET /api/v1/organizers/(organizer)/events/(event)/items/(id)/variations/

* MKBDIGI-184: endpoint for GET /api/v1/organizers/(organizer)/events/(event)/items/(id)/variations/

* MKBDIGI-184: Completed endpoint for variations

* MKBDIGI-184: Added endpoint for addons

* MKBDIGI-184: Added Item validation

* MKBDIGI-184: Added check for order/cart positions on item variation destroy.

* MKBDIGI-184: Fixed check for order/cart positions on item variation destroy.

* MKBDIGI-184: Updated tests, validation for addons

* MKBDIGI-184: Documentation feedback corrections

* MKBDIGI-184: Added documentation for item add-ons

* MKBDIGI-184: Code formatting fixes

* MKBDIGI-184: Feedback fixes

* MKBDIGI-184: Updated tests for delete item

* MKBDIGI-184: Cleaned up tests

* MKBDIGI-184: Added additional test URLs

* MKBDIGI-184: Documentation fixes

* MKBDIGI-184: Fixed read-only fields/Documentation

* MKBDIGI-184: Documentation fixes

* MKBDIGI-184: Added helper for dict merge for 3.4 compatibility

* MKBDIGI-184: Validation updates

* MKBDIGI-184: Fixed permissions test error. Changed to HTTP 404 for POST to addons endpoint

* MKBDIGI-184: Implemented nested variations and add-ons for POST on the item endpoint.
2018-02-01 15:43:51 +01:00
Raphael Michel
0b12b7aa89 Refs #678 -- Allow deletion of events that do not have any orders 2018-01-29 12:25:11 +01:00
Raphael Michel
3a713541a2 User management UI for system administrators 2018-01-29 12:25:11 +01:00
Raphael Michel
e12caf186c Use Select2 for subevent and other long selections (#763)
* Use Select2 for subevent and other long selections

* Minor correction
2018-01-26 16:47:33 +01:00
Raphael Michel
1ee6e31538 Fix #190 and #472 -- Change of questions within pretix control 2018-01-26 12:43:47 +01:00
Raphael Michel
083c94403b Fix #400 -- Automatically create cancellations for invoices on expiry (#760) 2018-01-26 09:09:04 +01:00
Raphael Michel
a81a4b895a Fix waiting list processing with infinite-size quotas 2018-01-24 15:04:23 +01:00
Raphael Michel
d0dfde382c Questions at check-in time (#745)
Questions at check-in time
2018-01-22 22:55:54 +01:00
Felix Rindt
78b31149b5 Fix #751 -- calculate payment fees in OrderChangeManager (#752)
* check for payment method instead of order total

* incorporate payment fee diff in totaldiff at oder change

* use fee from model and the correct order total

* add error handling

* do not change paid orders

* OrderChangedManager can only be committed once

* remove prints of stripe secrets

* add tests

* an OrderChangeManager must not be committed multiple times
* A pending free order stays pending after being changed

* comments on paid_to_free logic
2018-01-22 12:53:46 +01:00
Raphael Michel
f8cc332ed7 Use "cancel" method instead of "refund" for free orders (#743)
* Use "cancel" method instead of "refund" for free orders

* Adjust API
2018-01-15 21:46:16 +01:00
Raphael Michel
d056013296 Fix failing test on CI 2018-01-15 13:06:24 +01:00
Felix Rindt
251d62f3c4 Fix #732 -- Add date and time question types (#732)
* [WIP] add date/time question type

* Date/time questions python classes, types and form handling

* use own timepicker

* Fix argument naming

* Add css and js for datetimepickers

* remove not needed str call

* seperate splitdatetime widget template and fix date/time questions

* change date placeholder to dec 31

* do not show seconds in presale time pickers

* improve codestyle

* add new question types to api doc

* add test

* expand test to datetime question

* add new questiontypes to changelog

remove duplicate parens

* remove timezone from time only question answers

* improve codestyle

* Fix date and time formatting in control question overview
2018-01-14 14:29:38 +01:00
Aiman Parvaiz
dd42037f21 Fix #634 -- Do not allow deleting the last date of an event series (#675)
* Checking for the last date in the event series before deleting a date. Last date in a event series should never be delted.

* Adding check to ensure that last date in a event series is not deleted. Editing unit test around deleting subevent to assert on alert-danger

* Increasing the scope of test_delete. We are now creating 2 subevents and testing deleting one and ensuring that the last one is not deleted

* Fixing alert text. Removing a redundant if condition for checking subevent count

* Adding assert for second event to ensure its not deleted

* Minor fixes and rebase
2018-01-14 13:54:22 +01:00
Raphael Michel
50575d45c1 Fix failing mail tests 2018-01-10 23:04:57 +01:00
Raphael Michel
2c04a4daec API: Adjust test to new reality 2017-12-20 16:29:05 +01:00
Raphael Michel
f3c1296105 API endpoint for positions on a check-in list 2017-12-20 15:08:14 +01:00
Raphael Michel
128203800c Implement notifications for admin users (#700)
* First stab at notification settings

* Add "global" setting for notification levels

* Trigger notification task

* Get users with permission for event

* Actually send notification emails

* More notifications

* Allow to turn off notifications

* Link in email to pause all notifications

* Add NotificationType to wordlist

* Add notification tests

* Add documentation

* Rebase fixes
2017-12-14 22:06:08 +01:00
Raphael Michel
15aff6030c Fix annotated check-in list query 2017-12-13 23:20:44 +01:00
Raphael Michel
8e7eab636f Fix a bug leading to loss of answers for addon-related questions 2017-12-11 21:38:42 +01:00
Raphael Michel
497679284a Bank CSV import: Allow dealing with files of more than a few hundred lines during first import 2017-12-07 18:29:08 +01:00
Raphael Michel
353dce789d Fix #515 -- Add check-in lists (#693)
* Data model and migration

* Some backwards compatibility

* CRUD for checkin lists

* Show and perform checkins

* Correct numbers in table and dashboard widget

* event creation and cloning

* Allow to link specific exports and pass options per query

* Play with the CSV export

* PDF export

* Collapse exports by default

* Improve PDF exporter

* Addon stuff

* Subevent stuff, pretixdroid tests

* pretixdroid tests

* Add CRUD API

* Test compatibility

* Fix test

* DB-independent sorting behavior

* Add CRUD and coyp tests

* Re-enable pretixdroid plugin

* pretixdroid config

* Tests & fixes
2017-12-04 18:12:23 +01:00
Raphael Michel
364ea9ca29 [SECURITY] Respect session timeout in API 2017-11-25 19:18:40 +01:00
Raphael Michel
f6b1bd9fe8 [SECURITY] Fix handling of session timeouts 2017-11-25 19:18:40 +01:00