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'))
 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'))
Example #3
0
 class Meta(BaseProductSerializer.Meta):
     fields = overridable(
         'OSCARAPI_PRODUCTDETAIL_FIELDS',
         default=('url', 'id', 'title', 'description', 'structure',
                  'date_created', 'date_updated', 'recommended_products',
                  'attributes', 'categories', 'product_class',
                  'stockrecords', 'images', 'price', 'availability',
                  'options', 'children'))
 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'))
    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
Example #6
0
 class Meta(BaseProductSerializer.Meta):
     fields = overridable(
         'OSCARAPI_CHILDPRODUCTDETAIL_FIELDS',
         default=(
             'url',
             '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'))
 class Meta:
     model = User
     fields = overridable(
         'OSCARAPI_USER_FIELDS',
         (User.USERNAME_FIELD, 'id', 'first_name', 'last_name', 'email'))
 class Meta:
     model = User
     fields = overridable(
         'OSCARAPI_USER_FIELDS',
         (User.USERNAME_FIELD, 'id', 'date_joined', 'username', 'password'))
 class Meta:
     model = Email
     fields = overridable('OSCARAPI_EMAIL_FIELDS',
                          ('id', 'subject', 'date_sent'))
 class Meta:
     model = Voucher
     fields = overridable('OSCARAPI_VOUCHER_FIELDS',
                          default=('name', 'code', 'start_datetime',
                                   'end_datetime'))
Example #11
0
 class Meta:
     model = Product
     fields = overridable('OSCARAPI_RECOMMENDED_PRODUCT_FIELDS',
                          default=('url', ))
Example #12
0
 class Meta:
     model = ProductAttribute
     fields = overridable('OSCARAPI_PRODUCT_ATTRIBUTE_FIELDS',
                          default=('name', 'productattributevalue_set'))
Example #13
0
 class Meta:
     model = ProductAttributeValue
     fields = overridable('OSCARAPI_PRODUCT_ATTRIBUTE_VALUE_FIELDS',
                          default=('name', 'value'))
Example #14
0
 class Meta:
     model = Option
     fields = overridable('OSCARAPI_OPTION_FIELDS',
                          default=('url', 'id', 'name', 'code', 'type'))
Example #15
0
 class Meta(BaseProductSerializer.Meta):
     fields = overridable('OSCARAPI_PRODUCT_FIELDS',
                          default=('url', 'id', 'title'))