Files
@ d4b0b52253ae
Branch filter:
Location: symposion_app/pinaxcon/templatetags/lca2019_tags.py - annotation
d4b0b52253ae
1.6 KiB
text/x-python
Registrasion updates
Show applied vouchers on attendee registration admin page.
Add head title and page title to more areas.
Update the dashboard to show warning for empty categories and have
button to open voucher page.
Fix exception on attendee page when user does not have attendee object.
Show applied vouchers on attendee registration admin page.
Add head title and page title to more areas.
Update the dashboard to show warning for empty categories and have
button to open voucher page.
Fix exception on attendee page when user does not have attendee object.
74dc779999c4 a26f9a6f1864 db3f28ddb286 74dc779999c4 74dc779999c4 74dc779999c4 74dc779999c4 74dc779999c4 74dc779999c4 74dc779999c4 74dc779999c4 a26f9a6f1864 a26f9a6f1864 a26f9a6f1864 74dc779999c4 74dc779999c4 74dc779999c4 bcdc6a864a4b bcdc6a864a4b 539fa2dfdd2b 539fa2dfdd2b 539fa2dfdd2b 539fa2dfdd2b 539fa2dfdd2b 539fa2dfdd2b dcae60d49158 dcae60d49158 539fa2dfdd2b 539fa2dfdd2b dcae60d49158 dcae60d49158 539fa2dfdd2b 539fa2dfdd2b 539fa2dfdd2b 539fa2dfdd2b 539fa2dfdd2b 539fa2dfdd2b 539fa2dfdd2b 539fa2dfdd2b 539fa2dfdd2b 539fa2dfdd2b 539fa2dfdd2b bcdc6a864a4b bcdc6a864a4b bcdc6a864a4b bcdc6a864a4b bcdc6a864a4b aae03d26ba02 aae03d26ba02 aae03d26ba02 d4b0b52253ae d4b0b52253ae d4b0b52253ae d4b0b52253ae d4b0b52253ae 89a11ac5582e aae03d26ba02 aae03d26ba02 aae03d26ba02 aae03d26ba02 89a11ac5582e db3f28ddb286 db3f28ddb286 db3f28ddb286 db3f28ddb286 db3f28ddb286 45b65340e18c 45b65340e18c 1022a42cf795 45b65340e18c 45b65340e18c 45b65340e18c 539fa2dfdd2b | from django import template
from django.forms import Form
import re
register = template.Library()
@register.filter
def has_required_fields(form):
for field in form:
if isinstance(field, Form):
if has_required_fields(field):
return True
if field.field.required:
return True
return False
@register.filter
def has_price_fields(form):
for field in form:
if isinstance(field, Form):
return has_price_fields(field)
help_text = field.field.help_text or ''
if '$' in help_text:
return True
label = field.field.label or ''
if '$' in label:
return True
choices = getattr(field.field, 'choices', [])
if choices:
for choice_id, choice_text in choices:
if '$' in choice_text:
return True
return False
@register.filter
def any_is_void(invoices):
for invoice in invoices:
if invoice.is_void:
return True
return False
@register.filter
def contains_items_not_in(list1, list2):
return len(set(list1).difference(list2)) > 0
@register.filter
def listlookup(lookup, target):
try:
return lookup[target]
except IndexError:
return None
@register.filter
def clean_text(txt):
# Remove double/triple/+ spaces from `txt` and replace with single space
return re.sub(r' {2,}' , ' ', txt)
@register.filter
def twitter_handle(txt):
# Add @ to twitter handle if not present
return txt if txt.startswith('@') else '@{}'.format(txt)
|