Remove some more edbob cruft.

This commit is contained in:
Lance Edgar 2014-11-18 23:00:24 -06:00
parent 9806c7a0a2
commit 8bf292ebac
14 changed files with 136 additions and 124 deletions
tailbone/forms/renderers

View file

@ -26,15 +26,11 @@ Common Field Renderers
from __future__ import unicode_literals
import pytz
import humanize
import formalchemy
from formalchemy.fields import FieldRenderer, SelectFieldRenderer, CheckBoxFieldRenderer
from pyramid.renderers import render
from webhelpers.html import HTML
from rattail.time import timezone
from tailbone.util import pretty_datetime
class AutocompleteFieldRenderer(FieldRenderer):
@ -80,34 +76,6 @@ class AutocompleteFieldRenderer(FieldRenderer):
return unicode(value)
def pretty_datetime(config, value):
"""
Formats a datetime as a "pretty" human-readable string, with a tooltip
showing the ISO string value.
:param config: Reference to a config object.
:param value: A ``datetime.datetime`` instance. Note that if this instance
is not timezone-aware, its timezone is assumed to be UTC.
"""
if not value:
return ''
# Make sure we're dealing with a tz-aware value. If we're given a naive
# value, we assume it to be local to the UTC timezone.
if not value.tzinfo:
value = pytz.utc.localize(value)
# Convert value to local timezone, and make a naive copy.
local = timezone(config)
value = local.normalize(value.astimezone(local))
naive_value = value.replace(tzinfo=None)
return HTML.tag('span',
title=value.strftime('%Y-%m-%d %H:%M:%S %Z%z'),
c=humanize.naturaltime(naive_value))
class DateTimeFieldRenderer(formalchemy.DateTimeFieldRenderer):
"""
Custom date/time field renderer, which displays a "pretty" value in

View file

@ -30,7 +30,8 @@ from formalchemy import TextFieldRenderer
from rattail.gpc import GPC
from .common import AutocompleteFieldRenderer
from webhelpers.html import literal
from edbob.pyramid.forms import pretty_datetime
from tailbone.util import pretty_datetime
__all__ = ['ProductFieldRenderer', 'GPCFieldRenderer',
@ -122,5 +123,6 @@ class PriceWithExpirationFieldRenderer(PriceFieldRenderer):
if result:
price = self.field.raw_value
if price.ends:
result += '  (%s)' % pretty_datetime(price.ends, from_='utc')
result = '{0}  ({1})'.format(
result, pretty_datetime(self.request.rattail_config, price.ends))
return result