Source code for core.templatetags.core_filters

import locale
import re
import string

from django import template


register = template.Library()


@register.filter(name='currency')
[docs]def currency(value): try: locale.setlocale(locale.LC_ALL, 'en_US.UTF-8') except: locale.setlocale(locale.LC_ALL, '') loc = locale.localeconv() value = locale.currency(value, loc['currency_symbol'], grouping=True) if '-' in value: return '(${0})'.format(value.replace('-$', '')) return value
@register.filter(name='int_to_tabs')
[docs]def tab_number(value): return u"\xa0" * 4 * int(value)
@register.filter(name="capwords")
[docs]def capitalize_words(value): """Capitalize the first letter of each lowercase word.""" output_list = list() uppercase_pattern = re.compile(r'[A-Z]') for word in str(value).split(): uppercase_letter = uppercase_pattern.search(word) if uppercase_letter is None: word = string.capwords(str(word)) output_list.append(word) output_string = ' '.join(output_list) return output_string