Expose the productUser
table data
just the basics for now...
This commit is contained in:
parent
5b48c44891
commit
6b423870eb
12
tailbone_corepos/templates/core-pos/products-user/index.mako
Normal file
12
tailbone_corepos/templates/core-pos/products-user/index.mako
Normal file
|
@ -0,0 +1,12 @@
|
|||
## -*- coding: utf-8; -*-
|
||||
<%inherit file="/master/index.mako" />
|
||||
|
||||
<%def name="context_menu_items()">
|
||||
${parent.context_menu_items()}
|
||||
% if request.has_perm('corepos.products.list'):
|
||||
<li>${h.link_to("View CORE-POS Products", url('corepos.products'))}</li>
|
||||
% endif
|
||||
</%def>
|
||||
|
||||
|
||||
${parent.body()}
|
12
tailbone_corepos/templates/core-pos/products/index.mako
Normal file
12
tailbone_corepos/templates/core-pos/products/index.mako
Normal file
|
@ -0,0 +1,12 @@
|
|||
## -*- coding: utf-8; -*-
|
||||
<%inherit file="/master/index.mako" />
|
||||
|
||||
<%def name="context_menu_items()">
|
||||
${parent.context_menu_items()}
|
||||
% if request.has_perm('corepos.products_user.list'):
|
||||
<li>${h.link_to("View CORE-POS Products User", url('corepos.products_user'))}</li>
|
||||
% endif
|
||||
</%def>
|
||||
|
||||
|
||||
${parent.body()}
|
|
@ -27,7 +27,7 @@ CORE-POS product views
|
|||
from corepos.db.office_op import model as corepos
|
||||
from corepos.db.util import table_exists
|
||||
|
||||
from webhelpers2.html import HTML
|
||||
from webhelpers2.html import HTML, tags
|
||||
|
||||
from .master import CoreOfficeMasterView
|
||||
|
||||
|
@ -115,6 +115,7 @@ class ProductView(CoreOfficeMasterView):
|
|||
'start_date',
|
||||
'end_date',
|
||||
|
||||
'created',
|
||||
'modified',
|
||||
|
||||
'discount',
|
||||
|
@ -169,6 +170,7 @@ class ProductView(CoreOfficeMasterView):
|
|||
f.set_renderer('vendor_items', self.render_vendor_items)
|
||||
|
||||
f.set_renderer('flags', self.render_flags)
|
||||
f.set_renderer('user_info', self.render_user_info)
|
||||
|
||||
f.set_type('start_date', 'datetime_local')
|
||||
f.set_type('end_date', 'datetime_local')
|
||||
|
@ -208,6 +210,14 @@ class ProductView(CoreOfficeMasterView):
|
|||
|
||||
return HTML.tag('ul', c=items)
|
||||
|
||||
def render_user_info(self, product, field):
|
||||
user_info = product.user_info
|
||||
if not user_info:
|
||||
return ""
|
||||
text = str(user_info)
|
||||
url = self.request.route_url('corepos.products_user.view', upc=user_info.upc)
|
||||
return tags.link_to(text, url)
|
||||
|
||||
def render_vendor_items(self, product, field):
|
||||
route_prefix = self.get_route_prefix()
|
||||
permission_prefix = self.get_permission_prefix()
|
||||
|
@ -298,6 +308,59 @@ class ProductView(CoreOfficeMasterView):
|
|||
return data
|
||||
|
||||
|
||||
class ProductUserView(CoreOfficeMasterView):
|
||||
"""
|
||||
Master view for `productUser` table
|
||||
"""
|
||||
model_class = corepos.ProductUser
|
||||
model_title = "CORE-POS Product User"
|
||||
model_title_plural = "CORE-POS Products User"
|
||||
url_prefix = '/core-pos/products-user'
|
||||
route_prefix = 'corepos.products_user'
|
||||
|
||||
labels = {
|
||||
'upc': "UPC",
|
||||
}
|
||||
|
||||
grid_columns = [
|
||||
'upc',
|
||||
'description',
|
||||
'brand',
|
||||
'sizing',
|
||||
'enable_online',
|
||||
'sold_out',
|
||||
]
|
||||
|
||||
form_fields = [
|
||||
'upc',
|
||||
'product',
|
||||
'description',
|
||||
'brand',
|
||||
'sizing',
|
||||
'long_text',
|
||||
'photo',
|
||||
'enable_online',
|
||||
'sold_out',
|
||||
]
|
||||
|
||||
def configure_grid(self, g):
|
||||
super(ProductUserView, self).configure_grid(g)
|
||||
|
||||
g.filters['upc'].default_active = True
|
||||
g.filters['upc'].default_verb = 'contains'
|
||||
|
||||
g.set_sort_defaults('upc')
|
||||
|
||||
g.set_link('upc')
|
||||
g.set_link('description')
|
||||
|
||||
def configure_form(self, f):
|
||||
super(ProductUserView, self).configure_form(f)
|
||||
|
||||
f.set_type('long_text', 'text')
|
||||
f.set_renderer('product', self.render_corepos_product)
|
||||
|
||||
|
||||
class ProductFlagView(CoreOfficeMasterView):
|
||||
"""
|
||||
Master view for product flags
|
||||
|
@ -320,4 +383,5 @@ class ProductFlagView(CoreOfficeMasterView):
|
|||
|
||||
def includeme(config):
|
||||
ProductView.defaults(config)
|
||||
ProductUserView.defaults(config)
|
||||
ProductFlagView.defaults(config)
|
||||
|
|
Loading…
Reference in a new issue