Merge pull request #4334 from netbox-community/4320-clean-up-template-tags-filters

Closes #4320: Clean up template tags filters
This commit is contained in:
Jeremy Stretch 2020-03-09 10:56:41 -04:00 committed by GitHub
commit cdcbf20d6a
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
18 changed files with 25 additions and 66 deletions

View File

@ -119,7 +119,7 @@
</div> </div>
<div class="panel-body rendered-markdown"> <div class="panel-body rendered-markdown">
{% if circuit.comments %} {% if circuit.comments %}
{{ circuit.comments|gfm }} {{ circuit.comments|render_markdown }}
{% else %} {% else %}
<span class="text-muted">None</span> <span class="text-muted">None</span>
{% endif %} {% endif %}

View File

@ -88,11 +88,11 @@
</tr> </tr>
<tr> <tr>
<td>NOC Contact</td> <td>NOC Contact</td>
<td class="rendered-markdown">{{ provider.noc_contact|gfm|placeholder }}</td> <td class="rendered-markdown">{{ provider.noc_contact|render_markdown|placeholder }}</td>
</tr> </tr>
<tr> <tr>
<td>Admin Contact</td> <td>Admin Contact</td>
<td class="rendered-markdown">{{ provider.admin_contact|gfm|placeholder }}</td> <td class="rendered-markdown">{{ provider.admin_contact|render_markdown|placeholder }}</td>
</tr> </tr>
<tr> <tr>
<td>Circuits</td> <td>Circuits</td>
@ -110,7 +110,7 @@
</div> </div>
<div class="panel-body rendered-markdown"> <div class="panel-body rendered-markdown">
{% if provider.comments %} {% if provider.comments %}
{{ provider.comments|gfm }} {{ provider.comments|render_markdown }}
{% else %} {% else %}
<span class="text-muted">None</span> <span class="text-muted">None</span>
{% endif %} {% endif %}

View File

@ -53,7 +53,7 @@
<div class="form-group"> <div class="form-group">
<label class="col-md-3 control-label required">Type</label> <label class="col-md-3 control-label required">Type</label>
<div class="col-md-9"> <div class="col-md-9">
<p class="form-control-static">{{ termination_a|model_name|capfirst }}</p> <p class="form-control-static">{{ termination_a|meta:"verbose_name"|capfirst }}</p>
</div> </div>
</div> </div>
<div class="form-group"> <div class="form-group">

View File

@ -325,7 +325,7 @@
</div> </div>
<div class="panel-body rendered-markdown"> <div class="panel-body rendered-markdown">
{% if device.comments %} {% if device.comments %}
{{ device.comments|gfm }} {{ device.comments|render_markdown }}
{% else %} {% else %}
<span class="text-muted">None</span> <span class="text-muted">None</span>
{% endif %} {% endif %}

View File

@ -149,7 +149,7 @@
</div> </div>
<div class="panel-body rendered-markdown"> <div class="panel-body rendered-markdown">
{% if devicetype.comments %} {% if devicetype.comments %}
{{ devicetype.comments|gfm }} {{ devicetype.comments|render_markdown }}
{% else %} {% else %}
<span class="text-muted">None</span> <span class="text-muted">None</span>
{% endif %} {% endif %}

View File

@ -11,7 +11,7 @@
<tr> <tr>
<td>Type</td> <td>Type</td>
<td> <td>
{{ termination|model_name|capfirst }} {{ termination|meta:"verbose_name"|capfirst }}
</td> </td>
</tr> </tr>
<tr> <tr>

View File

@ -17,7 +17,7 @@
<div class="panel-body text-center"> <div class="panel-body text-center">
{% if end.device %} {% if end.device %}
{# Device component #} {# Device component #}
{% with model=end|model_name %} {% with model=end|meta:"verbose_name" %}
<strong>{{ model|bettertitle }} {{ end }}</strong><br /> <strong>{{ model|bettertitle }} {{ end }}</strong><br />
{% if model == 'interface' %} {% if model == 'interface' %}
{{ end.get_type_display }} {{ end.get_type_display }}

View File

@ -158,7 +158,7 @@
</div> </div>
<div class="panel-body rendered-markdown"> <div class="panel-body rendered-markdown">
{% if powerfeed.comments %} {% if powerfeed.comments %}
{{ powerfeed.comments|gfm }} {{ powerfeed.comments|render_markdown }}
{% else %} {% else %}
<span class="text-muted">None</span> <span class="text-muted">None</span>
{% endif %} {% endif %}

View File

@ -198,7 +198,7 @@
</div> </div>
<div class="panel-body rendered-markdown"> <div class="panel-body rendered-markdown">
{% if rack.comments %} {% if rack.comments %}
{{ rack.comments|gfm }} {{ rack.comments|render_markdown }}
{% else %} {% else %}
<span class="text-muted">None</span> <span class="text-muted">None</span>
{% endif %} {% endif %}

View File

@ -143,7 +143,7 @@
<td> <td>
{% if site.physical_address %} {% if site.physical_address %}
<div class="pull-right noprint"> <div class="pull-right noprint">
<a href="http://maps.google.com/?q={{ site.physical_address|oneline|urlencode }}" target="_blank" class="btn btn-primary btn-xs"> <a href="http://maps.google.com/?q={{ site.physical_address|urlencode }}" target="_blank" class="btn btn-primary btn-xs">
<i class="glyphicon glyphicon-map-marker"></i> Map it <i class="glyphicon glyphicon-map-marker"></i> Map it
</a> </a>
</div> </div>
@ -206,7 +206,7 @@
</div> </div>
<div class="panel-body rendered-markdown"> <div class="panel-body rendered-markdown">
{% if site.comments %} {% if site.comments %}
{{ site.comments|gfm }} {{ site.comments|render_markdown }}
{% else %} {% else %}
<span class="text-muted">None</span> <span class="text-muted">None</span>
{% endif %} {% endif %}

View File

@ -47,7 +47,7 @@
<tr> <tr>
<td>{{ forloop.counter }}</td> <td>{{ forloop.counter }}</td>
<td>{% log_level level %}</td> <td>{% log_level level %}</td>
<td class="rendered-markdown">{{ message|gfm }}</td> <td class="rendered-markdown">{{ message|render_markdown }}</td>
</tr> </tr>
{% empty %} {% empty %}
<tr> <tr>

View File

@ -90,7 +90,7 @@
</div> </div>
<div class="panel-body rendered-markdown"> <div class="panel-body rendered-markdown">
{% if tag.comments %} {% if tag.comments %}
{{ tag.comments|gfm }} {{ tag.comments|render_markdown }}
{% else %} {% else %}
<span class="text-muted">None</span> <span class="text-muted">None</span>
{% endif %} {% endif %}

View File

@ -35,7 +35,7 @@
</div> </div>
<div class="panel-body"> <div class="panel-body">
<div class="form-group"> <div class="form-group">
<label class="col-md-3 control-label">{{ obj.interface.parent|model_name|bettertitle }}</label> <label class="col-md-3 control-label">{{ obj.interface.parent|meta:"verbose_name"|bettertitle }}</label>
<div class="col-md-9"> <div class="col-md-9">
<p class="form-control-static"> <p class="form-control-static">
<a href="{{ obj.interface.parent.get_absolute_url }}">{{ obj.interface.parent }}</a> <a href="{{ obj.interface.parent.get_absolute_url }}">{{ obj.interface.parent }}</a>

View File

@ -87,7 +87,7 @@
</div> </div>
<div class="panel-body rendered-markdown"> <div class="panel-body rendered-markdown">
{% if tenant.comments %} {% if tenant.comments %}
{{ tenant.comments|gfm }} {{ tenant.comments|render_markdown }}
{% else %} {% else %}
<span class="text-muted">None</span> <span class="text-muted">None</span>
{% endif %} {% endif %}

View File

@ -15,7 +15,7 @@
{% export_button content_type %} {% export_button content_type %}
{% endif %} {% endif %}
</div> </div>
<h1>{% block title %}{{ content_type.model_class|model_name_plural|bettertitle }}{% endblock %}</h1> <h1>{% block title %}{{ content_type.model_class|meta:"verbose_name_plural"|bettertitle }}{% endblock %}</h1>
<div class="row"> <div class="row">
<div class="col-md-{% if filter_form %}9{% else %}12{% endif %}"> <div class="col-md-{% if filter_form %}9{% else %}12{% endif %}">
{% with bulk_edit_url=content_type.model_class|url_name:"bulk_edit" bulk_delete_url=content_type.model_class|url_name:"bulk_delete" %} {% with bulk_edit_url=content_type.model_class|url_name:"bulk_edit" bulk_delete_url=content_type.model_class|url_name:"bulk_delete" %}

View File

@ -115,7 +115,7 @@
</div> </div>
<div class="panel-body rendered-markdown"> <div class="panel-body rendered-markdown">
{% if cluster.comments %} {% if cluster.comments %}
{{ cluster.comments|gfm }} {{ cluster.comments|render_markdown }}
{% else %} {% else %}
<span class="text-muted">None</span> <span class="text-muted">None</span>
{% endif %} {% endif %}

View File

@ -152,7 +152,7 @@
</div> </div>
<div class="panel-body rendered-markdown"> <div class="panel-body rendered-markdown">
{% if virtualmachine.comments %} {% if virtualmachine.comments %}
{{ virtualmachine.comments|gfm }} {{ virtualmachine.comments|render_markdown }}
{% else %} {% else %}
<span class="text-muted">None</span> <span class="text-muted">None</span>
{% endif %} {% endif %}

View File

@ -20,15 +20,6 @@ register = template.Library()
# Filters # Filters
# #
@register.filter()
def oneline(value):
"""
Replace each line break with a single space
"""
value = value.replace('\r', '')
return value.replace('\n', ' ')
@register.filter() @register.filter()
def placeholder(value): def placeholder(value):
""" """
@ -40,25 +31,8 @@ def placeholder(value):
return mark_safe(placeholder) return mark_safe(placeholder)
@register.filter()
def getlist(value, arg):
"""
Return all values of a QueryDict key
"""
return value.getlist(arg)
@register.filter
def getkey(value, key):
"""
Return a dictionary item specified by key
"""
return value[key]
# TODO: Rename this filter as py-gfm is no longer in use
@register.filter(is_safe=True) @register.filter(is_safe=True)
def gfm(value): def render_markdown(value):
""" """
Render text as Markdown Render text as Markdown
""" """
@ -88,19 +62,12 @@ def render_yaml(value):
@register.filter() @register.filter()
def model_name(obj): def meta(obj, attr):
""" """
Return the name of the model of the given object Return the specified Meta attribute of a model. This is needed because Django does not permit templates
to access attributes which begin with an underscore (e.g. _meta).
""" """
return obj._meta.verbose_name return getattr(obj._meta, attr, '')
@register.filter()
def model_name_plural(obj):
"""
Return the plural name of the model of the given object
"""
return obj._meta.verbose_name_plural
@register.filter() @register.filter()
@ -118,14 +85,6 @@ def url_name(model, action):
return None return None
@register.filter()
def contains(value, arg):
"""
Test whether a value contains any of a given set of strings. `arg` should be a comma-separated list of strings.
"""
return any(s in value for s in arg.split(','))
@register.filter() @register.filter()
def bettertitle(value): def bettertitle(value):
""" """