diff --git a/doc/api/resources/quotas.rst b/doc/api/resources/quotas.rst index 0ef7be6e7f..2d7f416fcb 100644 --- a/doc/api/resources/quotas.rst +++ b/doc/api/resources/quotas.rst @@ -26,6 +26,8 @@ close_when_sold_out boolean If ``true``, th again. closed boolean Whether the quota is currently closed (see above field). +release_after_exit boolean Whether the quota regains capacity as soon as some tickets + have been scanned at an exit. ===================================== ========================== ======================================================= .. versionchanged:: 1.10 @@ -36,6 +38,10 @@ closed boolean Whether the quo The attributes ``close_when_sold_out`` and ``closed`` have been added. +.. versionchanged:: 3.10 + + The attribute ``release_after_exit`` has been added. + Endpoints --------- diff --git a/doc/api/resources/subevents.rst b/doc/api/resources/subevents.rst index 2edb982a16..b7616197c7 100644 --- a/doc/api/resources/subevents.rst +++ b/doc/api/resources/subevents.rst @@ -39,10 +39,12 @@ geo_lon float Longitude of th item_price_overrides list of objects List of items for which this sub-event overrides the default price ├ item integer The internal item ID +├ disabled boolean If ``true``, item should not be available for this sub-event └ price money (string) The price or ``null`` for the default price variation_price_overrides list of objects List of variations for which this sub-event overrides the default price ├ variation integer The internal variation ID +├ disabled boolean If ``true``, variation should not be available for this sub-event └ price money (string) The price or ``null`` for the default price meta_data object Values set for organizer-specific meta data parameters. seating_plan integer If reserved seating is in use, the ID of a seating @@ -74,6 +76,10 @@ seat_category_mapping object An object mappi The attributes ``geo_lat`` and ``geo_lon`` have been added. +.. versionchanged:: 3.10 + + The ``disabled`` attribute has been added to ``item_price_overrides`` and ``variation_price_overrides``. + Endpoints --------- @@ -125,6 +131,7 @@ Endpoints "item_price_overrides": [ { "item": 2, + "disabled": false, "price": "12.00" } ], @@ -182,6 +189,7 @@ Endpoints "item_price_overrides": [ { "item": 2, + "disabled": false, "price": "12.00" } ], @@ -216,6 +224,7 @@ Endpoints "item_price_overrides": [ { "item": 2, + "disabled": false, "price": "12.00" } ], @@ -271,6 +280,7 @@ Endpoints "item_price_overrides": [ { "item": 2, + "disabled": false, "price": "12.00" } ], @@ -307,6 +317,7 @@ Endpoints "item_price_overrides": [ { "item": 2, + "disabled": false, "price": "23.42" } ], @@ -339,6 +350,7 @@ Endpoints "item_price_overrides": [ { "item": 2, + "disabled": false, "price": "23.42" } ], @@ -427,6 +439,7 @@ Endpoints "item_price_overrides": [ { "item": 2, + "disabled": false, "price": "12.00" } ], diff --git a/src/pretix/api/serializers/event.py b/src/pretix/api/serializers/event.py index afa46bba85..0809cfe24c 100644 --- a/src/pretix/api/serializers/event.py +++ b/src/pretix/api/serializers/event.py @@ -341,13 +341,13 @@ class CloneEventSerializer(EventSerializer): class SubEventItemSerializer(I18nAwareModelSerializer): class Meta: model = SubEventItem - fields = ('item', 'price') + fields = ('item', 'price', 'disabled') class SubEventItemVariationSerializer(I18nAwareModelSerializer): class Meta: model = SubEventItemVariation - fields = ('variation', 'price') + fields = ('variation', 'price', 'disabled') class SubEventSerializer(I18nAwareModelSerializer): diff --git a/src/pretix/api/serializers/item.py b/src/pretix/api/serializers/item.py index 7f9662f7e1..8924a02968 100644 --- a/src/pretix/api/serializers/item.py +++ b/src/pretix/api/serializers/item.py @@ -349,7 +349,7 @@ class QuotaSerializer(I18nAwareModelSerializer): class Meta: model = Quota - fields = ('id', 'name', 'size', 'items', 'variations', 'subevent', 'closed', 'close_when_sold_out') + fields = ('id', 'name', 'size', 'items', 'variations', 'subevent', 'closed', 'close_when_sold_out', 'release_after_exit') def validate(self, data): data = super().validate(data) diff --git a/src/tests/api/test_items.py b/src/tests/api/test_items.py index b6eda7efc7..0dccfddc44 100644 --- a/src/tests/api/test_items.py +++ b/src/tests/api/test_items.py @@ -1502,6 +1502,7 @@ TEST_QUOTA_RES = { "variations": [], "subevent": None, "close_when_sold_out": False, + "release_after_exit": False, "closed": False }