Add CostFieldRenderer
and tweak product view template
latter being for easier customization
This commit is contained in:
parent
95b2ce25c1
commit
3dfe3dfa28
4 changed files with 135 additions and 103 deletions
|
@ -44,7 +44,7 @@ from .vendors import VendorFieldRenderer, PurchaseFieldRenderer
|
|||
from .products import (GPCFieldRenderer, ScancodeFieldRenderer,
|
||||
DepartmentFieldRenderer, SubdepartmentFieldRenderer, CategoryFieldRenderer,
|
||||
BrandFieldRenderer, ProductFieldRenderer,
|
||||
PriceFieldRenderer, PriceWithExpirationFieldRenderer)
|
||||
CostFieldRenderer, PriceFieldRenderer, PriceWithExpirationFieldRenderer)
|
||||
|
||||
from .custorders import CustomerOrderFieldRenderer
|
||||
|
||||
|
|
|
@ -1,8 +1,8 @@
|
|||
# -*- coding: utf-8 -*-
|
||||
# -*- coding: utf-8; -*-
|
||||
################################################################################
|
||||
#
|
||||
# Rattail -- Retail Software Framework
|
||||
# Copyright © 2010-2016 Lance Edgar
|
||||
# Copyright © 2010-2017 Lance Edgar
|
||||
#
|
||||
# This file is part of Rattail.
|
||||
#
|
||||
|
@ -30,6 +30,7 @@ from rattail.gpc import GPC
|
|||
from rattail.db import model
|
||||
from rattail.db.util import maxlen
|
||||
|
||||
import formalchemy as fa
|
||||
from formalchemy import TextFieldRenderer
|
||||
from formalchemy.fields import SelectFieldRenderer
|
||||
from webhelpers.html import tags, literal
|
||||
|
@ -158,6 +159,18 @@ class BrandFieldRenderer(AutocompleteFieldRenderer):
|
|||
service_route = 'brands.autocomplete'
|
||||
|
||||
|
||||
class CostFieldRenderer(fa.FieldRenderer):
|
||||
"""
|
||||
Renders fields which reference a ProductCost object
|
||||
"""
|
||||
|
||||
def render_readonly(self, **kwargs):
|
||||
cost = self.raw_value
|
||||
if not cost:
|
||||
return ''
|
||||
return '${:0.2f}'.format(cost.unit_cost)
|
||||
|
||||
|
||||
class PriceFieldRenderer(TextFieldRenderer):
|
||||
"""
|
||||
Renderer for fields which reference a :class:`ProductPrice` instance.
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue