Skip to content

Custom Template Tags Reference

Version: Arctyk ITSM v0.6.0+
Last Updated: January 2026

Documentation for custom Django template tags and filters.


Tags

Library: core_tags
Purpose: Highlights active navigation links

Usage:

{% load core_tags %}
<a href="{% url 'tickets' %}" {% active_link 'tickets' %}>Tickets</a>

Parameters:

  • url_name - Name of the URL to check against current path

Returns: class="active" if URL matches current path


{% status_badge %}

Library: ticket_tags
Purpose: Renders status badge with appropriate color

Usage:

{% load ticket_tags %}
{% status_badge ticket.status %}

Output: <span class="badge badge-primary">Open</span>


{% priority_icon %}

Library: ticket_tags
Purpose: Renders priority icon

Usage:

{% load ticket_tags %}
{% priority_icon ticket.priority %}

{% comment_type_badge %} (v0.6.0+)

Library: ticket_tags
Purpose: Renders comment type badge (public/internal)

Usage:

{% load ticket_tags %}
{% comment_type_badge comment.comment_type %}

Output: <span class="badge badge-warning">Internal</span>


Filters

|markdown

Library: core_tags
Purpose: Converts markdown to HTML

Usage:

{% load core_tags %}
{{ content|markdown }}

|truncate_chars_html

Library: core_tags
Purpose: Truncates HTML content safely

Usage:

{% load core_tags %}
{{ description|truncate_chars_html:100 }}

|status_class

Library: ticket_tags
Purpose: Returns CSS class for status

Usage:

{% load ticket_tags %}
<span class="{{ ticket.status|status_class }}">{{ ticket.status }}</span>

Returns: badge-success, badge-primary, badge-warning, etc.


|priority_class

Library: ticket_tags
Purpose: Returns CSS class for priority

Usage:

{% load ticket_tags %}
<span class="{{ ticket.priority|priority_class }}">{{ ticket.priority }}</span>

|time_ago

Library: core_tags
Purpose: Converts datetime to relative time (e.g., "2 hours ago")

Usage:

{% load core_tags %}
{{ ticket.created_at|time_ago }}

|format_duration (v0.6.0+)

Library: ticket_tags
Purpose: Formats timedelta for SLA display

Usage:

{% load ticket_tags %}
{{ sla_time|format_duration }}

Output: "2h 30m" or "3d 5h"