diff --git a/tailbone/app.py b/tailbone/app.py index 9874e51a..0f24f1fb 100644 --- a/tailbone/app.py +++ b/tailbone/app.py @@ -154,11 +154,19 @@ def make_pyramid_config(settings, configure_csrf=True): else: config.include('pyramid_retry') - # configure DB sessions associated with transaction manager + # fetch all tailbone providers providers = get_all_providers(rattail_config) for provider in six.itervalues(providers): + + # configure DB sessions associated with transaction manager provider.configure_db_sessions(rattail_config, config) + # add any static includes + includes = provider.get_static_includes() + if includes: + for spec in includes: + config.include(spec) + # Add some permissions magic. config.add_directive('add_tailbone_permission_group', 'tailbone.auth.add_permission_group') config.add_directive('add_tailbone_permission', 'tailbone.auth.add_permission') diff --git a/tailbone/providers.py b/tailbone/providers.py index 6752a447..baa2a15d 100644 --- a/tailbone/providers.py +++ b/tailbone/providers.py @@ -42,6 +42,9 @@ class TailboneProvider(object): def configure_db_sessions(self, rattail_config, pyramid_config): pass + def get_static_includes(self): + pass + def get_provided_views(self): return {} diff --git a/tailbone/views/poser/views.py b/tailbone/views/poser/views.py index a5fc9a4a..a7ace23e 100644 --- a/tailbone/views/poser/views.py +++ b/tailbone/views/poser/views.py @@ -170,6 +170,31 @@ class PoserViewView(PoserMasterView): }, }, + 'batches': { + + 'tailbone.views.batch.delproduct': { + 'label': "Delete Product", + }, + 'tailbone.views.batch.inventory': { + 'label': "Inventory", + }, + 'tailbone.views.batch.labels': { + 'label': "Labels", + }, + 'tailbone.views.batch.newproduct': { + 'label': "New Product", + }, + 'tailbone.views.batch.pricing': { + 'label': "Pricing", + }, + 'tailbone.views.batch.product': { + 'label': "Product", + }, + 'tailbone.views.batch.vendorcatalog': { + 'label': "Vendor Catalog", + }, + }, + 'other': { 'tailbone.views.stores': {