X-Git-Url: https://asedeno.scripts.mit.edu/gitweb/?a=blobdiff_plain;f=bluechips%2Flib%2Fhelpers.py;h=0f49a54b6293f6175f1fef9c120296b112a0fb65;hb=94a556a2cc75c26c623e6855039d214ab62e17de;hp=4bb357663737b58c3dc15477f3fa77a8629e0529;hpb=9059c6f95453b04f506c913b2030963562c86cf1;p=bluechips.git diff --git a/bluechips/lib/helpers.py b/bluechips/lib/helpers.py index 4bb3576..0f49a54 100644 --- a/bluechips/lib/helpers.py +++ b/bluechips/lib/helpers.py @@ -3,18 +3,37 @@ Consists of functions to typically be used within templates, but also available to Controllers. This module is available to both as 'h'. """ +from datetime import date +from decimal import Decimal + +from pylons import request from routes import url_for, redirect_to from webhelpers.html import escape, literal, url_escape from webhelpers.html.tags import * +from webhelpers.html.secure_form import * from webhelpers.pylonslib import Flash as _Flash -from decimal import Decimal -def bluechips(): - return 'BlueChips' +def currency(name, value, *args, **kwargs): + if 'class_' not in kwargs: + kwargs['class_'] = '' + kwargs['class_'] += 'currency' + value = "%0.2f" % (int(value) / 100.) + return text(name, value, *args, **kwargs) + -def round_currency(value): - return Decimal(value).quantize(Decimal('0.01')) +def grab(obj, attr): + if obj: + return getattr(obj, attr) + else: + if attr == 'date': + return date.today() + elif attr in ('spender_id', 'creditor_id', 'debtor_id'): + return request.environ['user'].id + elif attr == 'amount': + return 0 + else: + return '' flash = _Flash()