Beispiel #1
0
def admin_link(*args, **kwargs):
    instance = args[-1]
    if kwargs['field'] in ['id', 'pk', '__str__']:
        obj = instance
    else:
        try:
            obj = get_field_value(instance, kwargs['field'])
        except ObjectDoesNotExist:
            return '---'
    if not getattr(obj, 'pk', None):
        return '---'
    display = kwargs.get('display')
    if display:
        display = getattr(obj, display, 'merda')
    else:
        display = obj
    try:
        url = change_url(obj)
    except NoReverseMatch:
        # Does not has admin
        return str(display)
    extra = ''
    if kwargs['popup']:
        extra = 'onclick="return showAddAnotherPopup(this);"'
    return '<a href="%s" %s>%s</a>' % (url, extra, display)
Beispiel #2
0
def admin_link(*args, **kwargs):
    instance = args[-1]
    if kwargs['field'] in ('id', 'pk', '__str__'):
        obj = instance
    else:
        try:
            obj = get_field_value(instance, kwargs['field'])
        except ObjectDoesNotExist:
            return '---'
    if not getattr(obj, 'pk', None):
        return '---'
    display = kwargs.get('display')
    if display:
        display = getattr(obj, display, display)
    else:
        display = obj
    try:
        url = change_url(obj)
    except NoReverseMatch:
        # Does not has admin
        return str(display)
    extra = ''
    if kwargs['popup']:
        extra = 'onclick="return showAddAnotherPopup(this);"'
    title = "Change %s" % obj._meta.verbose_name
    return mark_safe('<a href="%s" title="%s" %s>%s</a>' %
                     (url, title, extra, display))
Beispiel #3
0
def admin_date(*args, **kwargs):
    instance = args[-1]
    value = get_field_value(instance, kwargs['field'])
    if not value:
        return kwargs.get('default', '')
    return '<span title="{0}">{1}</span>'.format(
        escape(str(value)), escape(naturaldate(value)),
    )
Beispiel #4
0
def admin_colored(*args, **kwargs):
    instance = args[-1]
    field = kwargs['field']
    value = escape(get_field_value(instance, field))
    color = kwargs.get('colors', {}).get(value, 'black')
    value = getattr(instance, 'get_%s_display' % field)().upper()
    colored_value = '<span style="color: %s;">%s</span>' % (color, value)
    if kwargs.get('bold', True):
        colored_value = '<b>%s</b>' % colored_value
    return mark_safe(colored_value)
Beispiel #5
0
def admin_colored(*args, **kwargs):
    instance = args[-1]
    field = kwargs['field']
    value = escape(get_field_value(instance, field))
    color = kwargs.get('colors', {}).get(value, 'black')
    value = getattr(instance, 'get_%s_display' % field)().upper()
    colored_value = '<span style="color: %s;">%s</span>' % (color, value)
    if kwargs.get('bold', True):
        colored_value = '<b>%s</b>' % colored_value
    return mark_safe(colored_value)
Beispiel #6
0
def admin_date(*args, **kwargs):
    instance = args[-1]
    value = get_field_value(instance, kwargs['field'])
    if not value:
        return kwargs.get('default', '')
    if isinstance(value, datetime.datetime):
        natural = humanize.naturaldatetime(value)
    else:
        natural = humanize.naturaldate(value)
    return '<span title="{0}">{1}</span>'.format(
        escape(str(value)), escape(natural),
    )
Beispiel #7
0
def admin_link(*args, **kwargs):
    instance = args[-1]
    if kwargs['field'] in ['id', 'pk', '__unicode__']:
        obj = instance
    else:
        obj = get_field_value(instance, kwargs['field'])
    if not getattr(obj, 'pk', None):
        return '---'
    url = admin_change_url(obj)
    extra = ''
    if kwargs['popup']:
        extra = 'onclick="return showAddAnotherPopup(this);"'
    return '<a href="%s" %s>%s</a>' % (url, extra, obj)
Beispiel #8
0
def admin_date(*args, **kwargs):
    instance = args[-1]
    date = get_field_value(instance, kwargs['field'])
    if not date:
        return kwargs.get('default', '')
    if isinstance(date, datetime.datetime):
        natural = humanize.naturaldatetime(date)
    else:
        natural = humanize.naturaldate(date)
    if hasattr(date, 'hour'):
        date = timezone.localtime(date)
        date = date.strftime("%Y-%m-%d %H:%M:%S %Z")
    else:
        date = date.strftime("%Y-%m-%d")
    return '<span title="{0}">{1}</span>'.format(date, escape(natural))
Beispiel #9
0
def admin_date(*args, **kwargs):
    instance = args[-1]
    date = get_field_value(instance, kwargs['field'])
    if not date:
        return kwargs.get('default', '')
    if isinstance(date, datetime.datetime):
        natural = humanize.naturaldatetime(date)
    else:
        natural = humanize.naturaldate(date)
    if hasattr(date, 'hour'):
        date = timezone.localtime(date)
        date = date.strftime("%Y-%m-%d %H:%M:%S %Z")
    else:
        date = date.strftime("%Y-%m-%d")
    return '<span title="{0}">{1}</span>'.format(date, escape(natural))