# -*- coding: utf-8; -*-
"""
Product views
"""

from tailbone.views import products as base
from tailbone_corepos.views import products as corepos_base


class ProductView(corepos_base.ProductView):
    """
    Product overrides for online demo
    """

    def configure_form(self, f):
        super(ProductView, self).configure_form(f)

        if self.editing:
            f.fields = [
                'upc',
                'brand_uuid',
                'description',
                'unit_size',
                'unit_of_measure',
                'size',
                'pack_size',
                'default_pack',
                'case_size',
                'weighed',
                'department_uuid',
                'subdepartment_uuid',
                'category_uuid',
                'family_uuid',
                'report_code_uuid',
                'regular_price_amount',
                'deposit_link_uuid',
                'tax_uuid',
                'tax1',
                'tax2',
                'tax3',
                'organic',
                'kosher',
                'vegan',
                'vegetarian',
                'gluten_free',
                'sugar_free',
                'discountable',
                'special_order',
                'not_for_sale',
                'ingredients',
                'notes',
                'status',
                'discontinued',
                'deleted',
            ]


def includeme(config):

    config.add_route('products.autocomplete', '/products/autocomplete')
    config.add_view(base.ProductsAutocomplete, route_name='products.autocomplete',
                    renderer='json', permission='products.list')

    config.add_route('products.print_labels', '/products/labels')
    config.add_view(base.print_labels, route_name='products.print_labels',
                    renderer='json', permission='products.print_labels')

    ProductView.defaults(config)