### setup core objects ######################################################### auth = Auth(db) checkout = Checkout(db) checkout.settings.table_purchase_order_name = 'plugin_checkout_purchase_order' checkout.settings.table_line_item = 'plugin_checkout_line_item' checkout.settings.extra_fields = { 'plugin_checkout_purchase_order': [Field('billing_address', 'text'), Field('shipping_address', 'text'), Field('ordered_on', 'datetime', label=T('Ordered on')), Field('created_on', 'datetime', default=request.now)], } catalog = Catalog(db) catalog.settings.table_product_name = 'plugin_checkout_product' catalog.settings.table_variant_name = 'plugin_checkout_variant' catalog.settings.table_option_group_name = 'plugin_checkout_option_group' catalog.settings.table_option_name = 'plugin_checkout_option' ### define tables ############################################################## auth.define_tables() table_user = auth.settings.table_user checkout.define_tables() table_purchase_order = checkout.settings.table_purchase_order table_line_item = checkout.settings.table_line_item catalog.define_tables() table_product = catalog.settings.table_product
### setup core objects ######################################################### auth = Auth(db) checkout = Checkout(db) checkout.settings.table_purchase_order_name = 'plugin_checkout_purchase_order' checkout.settings.table_line_item = 'plugin_checkout_line_item' checkout.settings.extra_fields = { 'plugin_checkout_purchase_order': [ Field('billing_address', 'text'), Field('shipping_address', 'text'), Field('ordered_on', 'datetime', label=T('Ordered on')), Field('created_on', 'datetime', default=request.now) ], } catalog = Catalog(db) catalog.settings.table_product_name = 'plugin_checkout_product' catalog.settings.table_variant_name = 'plugin_checkout_variant' catalog.settings.table_option_group_name = 'plugin_checkout_option_group' catalog.settings.table_option_name = 'plugin_checkout_option' catalog.settings.extra_fields = { 'plugin_checkout_product': [ Field('name', label=T('Name')), Field('active', 'boolean', default=False, label=T('Active')), ], 'plugin_checkout_variant': [ Field('sku', unique=True, label=T('SKU')), Field('price', 'integer', label=T('Sale price')), Field('quantity', 'integer', label=T('Inventory quantity')), ], 'plugin_checkout_option_group': [
# -*- coding: utf-8 -*- from plugin_catalog import Catalog import unittest from gluon.contrib.populate import populate from plugin_solidtable import SOLIDTABLE from plugin_multiselect_widget import hmultiselect_widget from plugin_tight_input_widget import tight_input_widget from gluon.validators import Validator from collections import defaultdict from gluon.utils import web2py_uuid if request.function == 'test': db = DAL('sqlite:memory:') ### setup core objects ######################################################### catalog = Catalog(db) catalog.settings.table_product_name = 'plugin_catalog_product' catalog.settings.table_variant_name = 'plugin_catalog_variant' catalog.settings.table_option_group_name = 'plugin_catalog_option_group' catalog.settings.table_option_name = 'plugin_catalog_option' catalog.settings.extra_fields = { 'plugin_catalog_product': [ Field('name', label=T('Name')), Field('active', 'boolean', default=False, label=T('Active')), Field('description', 'text', label=T('Description')), Field('image', 'upload', label=T('Image'), autodelete=True, uploadfolder=os.path.join(request.folder, 'uploads'), comment='size < 10k'),
# -*- coding: utf-8 -*- from plugin_catalog import Catalog import unittest from gluon.contrib.populate import populate from plugin_solidtable import SOLIDTABLE from plugin_multiselect_widget import hmultiselect_widget from plugin_tight_input_widget import tight_input_widget from gluon.validators import Validator from collections import defaultdict from gluon.utils import web2py_uuid if request.function == 'test': db = DAL('sqlite:memory:') ### setup core objects ######################################################### catalog = Catalog(db) catalog.settings.table_product_name = 'plugin_catalog_product' catalog.settings.table_variant_name = 'plugin_catalog_variant' catalog.settings.table_option_group_name = 'plugin_catalog_option_group' catalog.settings.table_option_name = 'plugin_catalog_option' catalog.settings.extra_fields = { 'plugin_catalog_product': [ Field('description', 'text', label=T('Description')), Field('image', 'upload', label=T('Image'), autodelete=True, uploadfolder=os.path.join(request.folder, 'uploads'), requires=IS_NULL_OR(IS_LENGTH(10240)), comment='size < 10k'), Field('created_on', 'datetime', default=request.now, label=T('Created on'), readable=False, writable=False), # --- Other possible fields --- # Field('status'), # Field('short_description', 'text'),