Commit Graph

50 Commits

Author SHA1 Message Date
Raphael Michel
4bfe0e3784 Order change manager: Allow to add multiple products 2019-10-10 12:59:16 +02:00
Raphael Michel
d4d046ca60 Order change manager: Allow to disable invoice issuing 2019-10-10 12:19:06 +02:00
Raphael Michel
1d0c148170 Fix #467 -- Pluggable email placeholders (#1429)
* Fix #467 -- Pluggable email placeholders

* Previews

* Polishing

* Fix tests

* Add missing doc file
2019-10-07 11:48:25 +02:00
Raphael Michel
93089d87e3 Add support for reserved seating (#1228)
* Initial work on seating

* Add seat guids

* Add product_list_top

* CartAdd: Ignore item when a seat is passed

* Cart display

* product_list_top → render_seating_plan

* Render seating plan in voucher redemption

* Fix failing tests

* Add tests for extending cart positions with seats

* Add subevent_forms to docs

* Update schema, migrations

* Dealing with expired orders

* steps to order change

* Change order positions

* Allow to add seats

* tests for ocm

* Fix things after rebase

* Seating plans API

* Add more tests for cart behaviour

* Widget support

* Adjust widget tests

* Re-enable CSP

* Update schema

* Api: position.seat

* Add guid to word list

* API: (sub)event.seating_plan

* Vali fixes

* Fix api

* Fix reference in test

* Fix test for real
2019-06-25 11:00:03 +02:00
Raphael Michel
d85ddb5bda Integrate django-scopes (#1319)
* Install django-scopes

* Fix tests.api

* Update tasks and cronjobs

* Fix remaining tests

* Remove unused import

* Fix tests after rebase

* Disable scopes for get_Events_with_any_permission

* Disable scopes for a management command
2019-06-17 10:46:55 +02:00
Raphael Michel
55edc8a3d6 Order change interface: Fix taxation edge case 2019-06-05 09:18:03 +02:00
Raphael Michel
c7774dfdb8 Allow to set a custom payment date for manual payments 2019-05-16 11:21:00 +02:00
Raphael Michel
de0e700fec Store whether we know email addresses are working because links have been clicked 2019-05-15 08:22:53 +02:00
Raphael Michel
a6c72abe75 Change semantics of changing orders (#1260)
* Change semantics of changing orders

This basically does two things to the "Change products" view of orders and the
OrderChangeManager program API:

1) It decouples changing items or subevents from changing prices.
   OrderChangeManager.change_item() and .change_subevent() no longer
   touch the price of a position. Instead .change_price() needs to be
   called explicitly. However, a client-side JavaScript component now
   *proposes* a new price based on the changed item or subevent.

2) The user interface now exposes the possibility of doing multiple
   things at the same time, i.e. changing the item, subevent and price
   in the same operation. OrderChangeManager already allowed this
   before.

(1) is basically a consequence of (2), while (2) is a prerequesite for
e.g. the `seating` branch, where changing the subevent will always
require changing the seat.

* Add tests for price calculation API
2019-04-30 09:51:19 +02:00
Raphael Michel
f23de7e2c0 Order change: Allow to ignore quotas 2019-02-11 16:15:54 +01:00
Raphael Michel
d073007fd7 Order change: Allow to keep price when changing items 2019-02-11 16:15:13 +01:00
Raphael Michel
60c1ea8aad Allow to keep cancellation fees (#1130)
* Allow to keep cancellation fees

* Add tests and clarifications

* Add API
2019-01-11 15:42:33 +01:00
Raphael Michel
8abfbba9d0 Refactor cancelling positions and orders in the data model (#1088)
- [x] Data model
- [x] display in order view in backend
- [x] review all usages of OrderPositions.objects
- [x] review all usages of order.positions
- [x] review all other model usages
- [x] review plugins
- [x] plugins backwards-compatible API?
- [x] decide on way forward for REST API
- [x] need to cancel fees
- [x] tests
- [ ] plugins
  - [ ] gdpr
  - [ ] reports
- [x] docs
2019-01-10 16:52:34 +01:00
Raphael Michel
85289fe0d1 Fix error when marking an expired order as paid 2018-12-07 11:04:41 +01:00
Raphael Michel
b93e7fcb60 Fix #1067 -- Allow to manually create partial payments 2018-12-02 18:32:16 +01:00
Raphael Michel
21530f315f Properly restrict refunds to full payment amount 2018-09-03 15:41:05 +02:00
Raphael Michel
18a378976b Fix #571 -- Partial payments and refunds 2018-08-06 12:24:36 +02:00
Raphael Michel
11ff81f852 Fix 85420602 and add tests 2018-06-01 13:40:08 +02:00
Raphael Michel
85420602e8 Fix #54 -- Allow the admin to force accept payments 2018-06-01 13:25:07 +02:00
Raphael Michel
bbb78aa5e6 Refs #928 -- Allow to regenerate secrets of specific tickets 2018-05-31 12:57:06 +02:00
Raphael Michel
edeaa1333b Fix #473 -- Internal name for categories and products (#900)
* Fix #473 -- Internal name for categories and products

* fix pdf renderer
2018-05-11 12:53:25 +02:00
Raphael Michel
6c525b5dcd Subevent selector: Use for extending orders 2018-04-03 12:19:25 +02:00
Raphael Michel
22c65da9d1 Fix invalid use of money_filter 2018-03-01 09:17:59 +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
Raphael Michel
2434bf14d5 Add checkin_attetion field to Order model 2018-02-22 13:25:26 +01:00
Raphael Michel
71a4664d1f Fix #339 -- Allow to split orders (#341)
* Fix #339 -- Allow to split orders

* Add tests for split orders

* Add notificatiosn to both users

* Improve logdisplay
2017-10-30 23:15:53 +01:00
Raphael Michel
429f30fca7 Make it optional to notify user on order change 2017-10-30 21:36:14 +01:00
Raphael Michel
bbade75061 Add option to ignore quota when extending expired orders 2017-10-10 12:40:18 +02:00
Raphael Michel
56338be13e Tax rules and reverse charge (#559)
Tax rules and reverse charge
2017-08-23 13:13:16 +03:00
Daniel
b90894c20f Fix #543 -- Allow send mail from order (#550)
- Add send email directly for order
- Add email history (from mass and custom) to each specific order
2017-07-18 11:45:30 +02:00
Raphael Michel
8123effa65 Add sub-events and relative date settings (#503)
* Data model

* little crud

* SubEventItemForm etc

* Drop SubEventItem.active, quota editor

* Fix failing tests

* First frontend stuff

* Addons form stuff

* Quota calculation

* net price display on EventIndex

* Add tests, solve some bugs

* Correct quota selection in more places, consolidate pricing logic

* Fix failing quota tests

* Fix TypeError

* Add tests for checkout

* Fixed a bug in QuotaForm

* Prevent immutable cart if a quota was removed from an item

* Add tests for pricing

* Handle waiting list

* Filter in check-in list

* Fixed import lost in rebase

* Fix waiting list widget

* Voucher management

* Voucher redemption

* Fix broken tests

* Add subevents to OrderChangeManager

* Create a subevent during event creation

* Fix bulk voucher creation

* Introduce subevent.active

* Copy from for subevents

* Show active in list

* ICal download for subevents

* Check start and end of presale

* Failing tests / show cart logic

* Test

* Rebase migrations

* REST API integration of sub-events

* Integrate quota calculation into the traditional quota form

* Make subevent argument to add_position optional

* Log-display foo

* pretixdroid and subevents

* Filter by subevent

* Add more tests

* Some mor tests

* Rebase fixes

* More tests

* Relative dates

* Restrict selection in relative datetime widgets

* Filter subevent list

* Re-label has_subevents

* Rebase fixes, subevents in calendar view

* Performance and caching issues

* Refactor calendar templates

* Permission tests

* Calendar fixes and month selection

* subevent selection

* Rename subevents to dates

* Add tests for calendar views
2017-07-11 13:56:00 +02:00
Raphael Michel
123d2f6120 Allow to add positions to an existing order 2017-06-19 15:22:57 +02:00
Raphael Michel
03d8cfb401 Cosmetic changes to locale change form 2017-04-11 10:54:12 +02:00
Jahongir
ccb981e6ce Issue #449: Display and change order locale (#459)
* Add more security headers (#458)

* Include some missing security headers

This change adds the following security headers:
* X-Content-Type-Options to prevent content type sniffing
* Referrer-Policy to prevent leaking referrer information when navigating away from the instance

* Migrate from Docker sample to manual configuration

Migrate the additional security headers from the Docker configuration sample to the manual configuration guide.

Add DS_Store to gitingore

* Show order locale in order details

* Add OrderLocaleChange view and OrderLocaleForm

Refactor OrderLocaleForm. Add test
2017-04-11 10:45:46 +02:00
Raphael Michel
ed04f3124f Introduce a setting to show net prices (#415)
* Introduce a setting to show net prices in the frontend

* Show net prices in the backend as well
2017-02-22 16:59:54 +01:00
Raphael Michel
124c3a99e6 Fix possible TypeError 2017-02-20 15:11:03 +01:00
Raphael Michel
c4bf73c8d6 Refs #340 -- Allow order changes for paid orders if they don't change the total 2017-02-15 18:42:46 +01:00
Raphael Michel
759fed7a8b OrderExtendForm: Allow to set today 2016-12-14 13:53:00 +01:00
Raphael Michel
0f8d520336 Add "regenerate secrets" option to OrderContactForm 2016-11-28 12:52:44 +01:00
Christopher Dambamuromo
bac9960d0c Fix #274 -- Disable weekends in datetimepicker for expiry (#320)
* Fix for Disable weekends in datetimepicker for expiry #274

* minor fixes from review
2016-11-17 22:39:48 +01:00
Raphael Michel
f22596a5a5 Fix #273 -- Set correct all order expiry times to the end of the day 2016-10-20 11:56:46 +02:00
Raphael Michel
b5a23224c8 Added admin action to make an expired order pending again 2016-10-03 11:14:20 +02:00
Raphael Michel
f79e1adf25 Fix #55 -- Datetime picker for input fields 2016-09-17 22:33:39 +02:00
Raphael Michel
a764e6f55b Allow admin to manually change order email 2016-09-01 22:24:09 +02:00
Raphael Michel
b21ed4d99f Fix #163 -- Form to change orders (#191) 2016-08-31 19:10:11 +02:00
Tobias Kunze
6fcf393aba Include comment field in OrderDetail view 2016-08-12 15:13:53 +02:00
Raphael Michel
d570b31ff3 Fixed serialization issue 2016-06-03 09:58:54 +02:00
Raphael Michel
d133d2abff Removed CleanerVersion layer [backwards-incompatible!] 2015-12-12 13:08:33 +01:00
Raphael Michel
e828d711bd Used isort to order all import statements 2015-07-19 20:46:34 +02:00
Raphael Michel
423dc9f0aa Refactor: separate forms from view, improve code style 2015-06-03 13:19:59 +02:00