예제 #1
0
 class Meta:
     model = UserAddress
     fields = overridable('OSCARAPI_USERADDRESS_FIELDS', (
         'id', 'title', 'first_name', 'last_name', 'line1', 'line2',
         'line3', 'line4', 'state', 'postcode', 'search_text',
         'phone_number', 'notes', 'is_default_for_shipping',
         'is_default_for_billing', 'country', 'url'))
예제 #2
0
 class Meta:
     model = ProductAttributeValue
     list_serializer_class = ProductAttributeValueListSerializer
     fields = overridable(
         "OSCARAPI_PRODUCT_ATTRIBUTE_VALUE_FIELDS",
         default=("name", "value", "code", "product"),
     )
예제 #3
0
 class Meta:
     model = Order
     fields = overridable(
         "OSCARAPI_ORDER_FIELDS",
         default=(
             "number",
             "basket",
             "url",
             "lines",
             "owner",
             "billing_address",
             "currency",
             "total_incl_tax",
             "total_excl_tax",
             "shipping_incl_tax",
             "shipping_excl_tax",
             "shipping_address",
             "shipping_method",
             "shipping_code",
             "status",
             "guest_email",
             "date_placed",
             "payment_url",
             "offer_discounts",
             "voucher_discounts",
         ),
     )
예제 #4
0
 class Meta:
     model = OrderLine
     fields = overridable('OSCAR_ORDERLINE_FIELD', default=[
         'attributes', 'url', 'product', 'stockrecord', 'quantity',
         'price_currency', 'price_excl_tax', 'price_incl_tax',
         'price_incl_tax_excl_discounts', 'price_excl_tax_excl_discounts',
         'order'])
예제 #5
0
 class Meta(BaseProductSerializer.Meta):
     fields = overridable(
         'OSCARAPI_PRODUCTDETAIL_FIELDS',
         default=('url', 'upc', 'id', 'title', 'description', 'structure',
                  'date_created', 'date_updated', 'recommended_products',
                  'attributes', 'categories', 'product_class',
                  'stockrecords', 'images', 'price', 'availability',
                  'options', 'children'))
예제 #6
0
 class Meta:
     model = Basket
     fields = overridable('OSCARAPI_BASKET_FIELDS', default=(
         'id', 'owner', 'status', 'lines',
         'url', 'total_excl_tax',
         'total_excl_tax_excl_discounts', 'total_incl_tax',
         'total_incl_tax_excl_discounts', 'total_tax', 'currency',
         'voucher_discounts', 'offer_discounts', 'is_tax_known'))
예제 #7
0
 class Meta:
     model = User
     fields = overridable('OSCARAPI_USER_FIELDS',
                          default=(
                              User.USERNAME_FIELD,
                              'id',
                              'date_joined',
                          ))
예제 #8
0
 class Meta:
     model = Line
     fields = overridable('OSCARAPI_BASKETLINE_FIELDS', default=(
         'url', 'product', 'quantity', 'attributes', 'price_currency',
         'price_excl_tax', 'price_incl_tax',
         'price_incl_tax_excl_discounts', 'price_excl_tax_excl_discounts',
         'is_tax_known', 'warning', 'basket', 'stockrecord', 'date_created'
     ))
예제 #9
0
 class Meta:
     model = Order
     fields = overridable('OSCARAPI_ORDER_FIELD', default=(
         'number', 'basket', 'url', 'lines',
         'owner', 'billing_address', 'currency', 'total_incl_tax',
         'total_excl_tax', 'shipping_incl_tax', 'shipping_excl_tax',
         'shipping_address', 'shipping_method', 'shipping_code', 'status',
         'guest_email', 'date_placed', 'payment_url', 'offer_discounts',
         'voucher_discounts')
     )
예제 #10
0
    def validate(self, attrs):
        user = authenticate(
            username=attrs['username'], password=attrs['password'])
        if user is None:
            raise serializers.ValidationError('invalid login')
        elif not user.is_active:
            raise serializers.ValidationError(
                'Can not log in as inactive user')
        elif user.is_staff and overridable(
                'OSCARAPI_BLOCK_ADMIN_API_ACCESS', True):
            raise serializers.ValidationError(
                'Staff users can not log in via the rest api')

        # set instance to the user so we can use this in the view
        self.instance = user
        return attrs
예제 #11
0
 class Meta:
     model = OrderLine
     fields = overridable(
         "OSCARAPI_ORDERLINE_FIELDS",
         default=(
             "attributes",
             "url",
             "product",
             "stockrecord",
             "quantity",
             "price_currency",
             "price_excl_tax",
             "price_incl_tax",
             "price_incl_tax_excl_discounts",
             "price_excl_tax_excl_discounts",
             "order",
         ),
     )
예제 #12
0
 class Meta:
     model = Line
     fields = overridable(
         "OSCARAPI_BASKETLINE_FIELDS",
         default=(
             "url",
             "product",
             "quantity",
             "attributes",
             "price_currency",
             "price_excl_tax",
             "price_incl_tax",
             "price_incl_tax_excl_discounts",
             "price_excl_tax_excl_discounts",
             "is_tax_known",
             "warning",
             "basket",
             "stockrecord",
             "date_created",
         ),
     )
예제 #13
0
 class Meta:
     model = Basket
     fields = overridable(
         "OSCARAPI_BASKET_FIELDS",
         default=(
             "id",
             "owner",
             "status",
             "lines",
             "url",
             "total_excl_tax",
             "total_excl_tax_excl_discounts",
             "total_incl_tax",
             "total_incl_tax_excl_discounts",
             "total_tax",
             "currency",
             "voucher_discounts",
             "offer_discounts",
             "is_tax_known",
         ),
     )
예제 #14
0
 class Meta(BaseProductSerializer.Meta):
     fields = overridable(
         'OSCARAPI_CHILDPRODUCTDETAIL_FIELDS',
         default=(
             'url',
             'upc',
             'id',
             'title',
             'structure',
             # 'parent', 'description', 'images', are not included by default, but
             # easily enabled by overriding OSCARAPI_CHILDPRODUCTDETAIL_FIELDS
             # in your settings file
             'date_created',
             'date_updated',
             'recommended_products',
             'attributes',
             'categories',
             'product_class',
             'stockrecords',
             'price',
             'availability',
             'options'))
예제 #15
0
 class Meta(PublicProductSerializer.Meta):
     fields = overridable(
         "OSCARAPI_PRODUCTDETAIL_FIELDS",
         default=(
             "url",
             "upc",
             "id",
             "title",
             "description",
             "structure",
             "date_created",
             "date_updated",
             "recommended_products",
             "attributes",
             "categories",
             "product_class",
             "images",
             "price",
             "availability",
             "options",
             "children",
         ),
     )
예제 #16
0
 class Meta(PublicProductSerializer.Meta):
     fields = overridable(
         "OSCARAPI_CHILDPRODUCTDETAIL_FIELDS",
         default=(
             "url",
             "upc",
             "id",
             "title",
             "structure",
             # 'parent', 'description', 'images', are not included by default, but
             # easily enabled by overriding OSCARAPI_CHILDPRODUCTDETAIL_FIELDS
             # in your settings file
             "date_created",
             "date_updated",
             "recommended_products",
             "attributes",
             "categories",
             "product_class",
             "price",
             "availability",
             "options",
         ),
     )
예제 #17
0
 class Meta:
     model = UserAddress
     fields = overridable(
         "OSCARAPI_USERADDRESS_FIELDS",
         default=(
             "id",
             "title",
             "first_name",
             "last_name",
             "line1",
             "line2",
             "line3",
             "line4",
             "state",
             "postcode",
             "search_text",
             "phone_number",
             "notes",
             "is_default_for_shipping",
             "is_default_for_billing",
             "country",
             "url",
         ),
     )
예제 #18
0
 class Meta:
     model = Product
     fields = overridable("OSCARAPI_RECOMMENDED_PRODUCT_FIELDS",
                          default=("url", ))
예제 #19
0
 class Meta(BaseProductSerializer.Meta):
     fields = overridable('OSCARAPI_PRODUCT_FIELDS',
                          default=('url', 'id', 'upc', 'title'))
예제 #20
0
 class Meta:
     model = Option
     fields = overridable("OSCARAPI_OPTION_FIELDS", default="__all__")
     list_serializer_class = UpdateForwardManyToManySerializer
예제 #21
0
 class Meta:
     model = ProductAttributeValue
     fields = overridable('OSCARAPI_PRODUCT_ATTRIBUTE_VALUE_FIELDS',
                          default=('name', 'value', 'code'))
예제 #22
0
 class Meta:
     model = Voucher
     fields = overridable(
         "OSCARAPI_VOUCHER_FIELDS",
         default=("name", "code", "start_datetime", "end_datetime"),
     )
예제 #23
0
 class Meta:
     model = Voucher
     fields = overridable('OSCARAPI_VOUCHER_FIELDS', default=(
         'name', 'code', 'start_datetime', 'end_datetime'
     ))
예제 #24
0
 class Meta:
     model = Option
     fields = overridable('OSCARAPI_OPTION_FIELDS',
                          default=('url', 'id', 'name', 'code', 'type'))
예제 #25
0
 class Meta:
     model = Product
     fields = overridable('OSCARAPI_RECOMMENDED_PRODUCT_FIELDS',
                          default=('url', ))
예제 #26
0
 class Meta(PublicProductSerializer.Meta):
     fields = overridable("OSCARAPI_PRODUCT_FIELDS",
                          default=("url", "id", "upc", "title"))
예제 #27
0
 def get_initial_order_status(self, basket):
     return overridable('OSCARAPI_INITIAL_ORDER_STATUS', default='new')
예제 #28
0
 class Meta:
     model = ProductAttribute
     fields = overridable('OSCARAPI_PRODUCT_ATTRIBUTE_FIELDS',
                          default=('name', 'productattributevalue_set'))
예제 #29
0
 class Meta:
     model = User
     fields = overridable(
         "OSCARAPI_USER_FIELDS",
         default=(User.USERNAME_FIELD, "email", "date_joined"),
     )
예제 #30
0
 class Meta:
     model = Surcharge
     fields = overridable(
         "OSCARAPI_SURCHARGE_FIELDS",
         default=("name", "code", "incl_tax", "excl_tax"),
     )