mirror of
https://github.com/netbox-community/netbox.git
synced 2024-05-10 07:54:54 +00:00
* Remove dark mode styling * Condense & rename light mode stylesheet * Upgrade to Bootstrap 5.3.2 * Swap out Bootstrap for Tabler; remove custom styling * Update base page layout for Tabler * Update login page * Bump node to v18 * Update button styles * Update object list view * Tweak navbar size * Clean up dashboard widgets * Ditch separate stylesheet for print media * Remove simplebar * Remove obsolete sidebar styling * Clean up object view template * Clean up object edit template * Standardize primary button sizing * Clean up object list styling * Add buttons for add & import to navigation menu * Fix global search bar * Fix slim-select form widget styling * Fix toast styling * Set base fonts * Clean up paginator styling * Clean up navigation menu group headings * Clean up footer links * Clean up card styles * Move SVG styles to a designated directory * Restructure SCSS files * Remove obsolete/redundant dependencies * Fix icon spacing * Update background color classes * Tweak banner & footer styling and spacing * Fix badge background colors in table content * Bump @types/bootstrap to 5.2.10 * Clean up form layouts * Fix object selector button style * Fix icon padding inside small buttons * Fix icon & badge spacing inside buttons and tabs * Hide paginator for empty pages * Fix hover color for list items (Tabler bug #1694) * Fix width of checkbox column in empty tables * Clean up bulk edit template * Fix border color of reslug button * Package & serve Google fonts locally * Fix tab styling * Reduce vetical space at top of dashboard * Remove obsolete content-wrapper template block * Fix icon spacing in dropdown menu items * Fix color label sizing * Separate bulk delete form & object list into tabs * Fix styling of filter group headings * Fix styling for object changelog & journal views * Standardize ordering & styling of action buttons * Fix designation of active menu item * Automatically expand menu section containing the active link * Clean up nav menu styling * Remove button colors; hide buttons except on hover/active * Highlight menu group containing the active item * Update & standardize alert styling * Refactor base templates to ensure consistent display of header content * Tweak styling for links inside badges * Clean up top menu * Fix JSON/YAML toggles for config context data * Fix object template header * Constrain tabs to container-xl; tweak header margins * Fix object identifier styling * Fix positioning of card header buttons * Remove padding from HTMX tables inside cards * Ensure consistent use of row headings in attribute tables * Remove padding surrounding tables inside cards * Remove obsolete CSS classes * Misc cleanup of old styling * Refactor 'controls' template block; ditch old classes * Fix login button sizing * Limit object edit form width * Append asterisk to required form field labels * Remove obsolete styling * Remove obsolete styling * Fix position of progress bar outside label * Fix alignment of delete button in report/script lists * Fix <pre> styling * Clean up page headers * Replace SVG icons with Material Design icons * Restore dark mode togle functionality * Fix top navbar background color under dark mode * Rebuild static assets
164 lines
6.9 KiB
HTML
164 lines
6.9 KiB
HTML
{% extends 'generic/object.html' %}
|
|
{% load helpers %}
|
|
{% load i18n %}
|
|
|
|
{% block title %}{{ object }}{% endblock %}
|
|
|
|
{% block breadcrumbs %}
|
|
<li class="breadcrumb-item"><a href="{% url 'extras:objectchange_list' %}">{% trans "Change Log" %}</a></li>
|
|
{% if object.related_object and object.related_object.get_absolute_url %}
|
|
<li class="breadcrumb-item"><a href="{{ object.related_object.get_absolute_url }}changelog/">{{ object.related_object }}</a></li>
|
|
{% elif object.changed_object and object.changed_object.get_absolute_url %}
|
|
<li class="breadcrumb-item"><a href="{{ object.changed_object.get_absolute_url }}changelog/">{{ object.changed_object }}</a></li>
|
|
{% elif object.changed_object and object.changed_object.get_display %}
|
|
<li class="breadcrumb-item">{{ object.changed_object }}</li>
|
|
{% else %}
|
|
<li class="breadcrumb-item">{{ object.object_repr }}</li>
|
|
{% endif %}
|
|
{% endblock %}
|
|
|
|
{# ObjectChange does not support the default add/edit/delete controls #}
|
|
{% block control-buttons %}{% endblock %}
|
|
{% block subtitle %}{% endblock %}
|
|
|
|
{% block content %}
|
|
<div class="row mb-3">
|
|
<div class="col col-md-5">
|
|
<div class="card">
|
|
<h5 class="card-header">{% trans "Change" %}</h5>
|
|
<table class="table table-hover attr-table">
|
|
<tr>
|
|
<th scope="row">{% trans "Time" %}</th>
|
|
<td>
|
|
{{ object.time|annotated_date }}
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<th scope="row">{% trans "User" %}</th>
|
|
<td>
|
|
{% if object.user.get_full_name %}
|
|
{{ object.user.get_full_name }} ({{ object.user_name }})
|
|
{% else %}
|
|
{{ object.user_name }}
|
|
{% endif %}
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<th scope="row">{% trans "Action" %}</th>
|
|
<td>
|
|
{{ object.get_action_display }}
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<th scope="row">{% trans "Object Type" %}</th>
|
|
<td>
|
|
{{ object.changed_object_type }}
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<th scope="row">{% trans "Object" %}</th>
|
|
<td>
|
|
{% if object.changed_object and object.changed_object.get_absolute_url %}
|
|
{{ object.changed_object|linkify }}
|
|
{% else %}
|
|
{{ object.object_repr }}
|
|
{% endif %}
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<th scope="row">{% trans "Request ID" %}</th>
|
|
<td>
|
|
{{ object.request_id }}
|
|
</td>
|
|
</tr>
|
|
</table>
|
|
</div>
|
|
</div>
|
|
<div class="col col-md-7">
|
|
<div class="card">
|
|
<h5 class="card-header d-flex justify-content-between">
|
|
{% trans "Difference" %}
|
|
<div class="btn-group btn-group-sm d-print-none">
|
|
<a {% if prev_change %}href="{% url 'extras:objectchange' pk=prev_change.pk %}"{% else %}disabled{% endif %} class="btn btn-outline-secondary">
|
|
<i class="mdi mdi-chevron-left" aria-hidden="true"></i> {% trans "Previous" %}
|
|
</a>
|
|
<a {% if next_change %}href="{% url 'extras:objectchange' pk=next_change.pk %}"{% else %}disabled{% endif %} class="btn btn-outline-secondary">
|
|
{% trans "Next" %} <i class="mdi mdi-chevron-right" aria-hidden="true"></i>
|
|
</a>
|
|
</div>
|
|
</h5>
|
|
<div class="card-body">
|
|
{% if diff_added == diff_removed %}
|
|
<span class="text-muted" style="margin-left: 10px;">
|
|
{% if object.action == 'create' %}
|
|
{% trans "Object Created" %}
|
|
{% elif object.action == 'delete' %}
|
|
{% trans "Object Deleted" %}
|
|
{% else %}
|
|
{% trans "No Changes" %}
|
|
{% endif %}
|
|
</span>
|
|
{% else %}
|
|
<pre class="change-diff change-removed">{{ diff_removed|json }}</pre>
|
|
<pre class="change-diff change-added">{{ diff_added|json }}</pre>
|
|
{% endif %}
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div class="row mb-3">
|
|
<div class="col col-md-6">
|
|
<div class="card">
|
|
<h5 class="card-header">{% trans "Pre-Change Data" %}</h5>
|
|
<div class="card-body">
|
|
{% if object.prechange_data %}
|
|
{% spaceless %}
|
|
<pre class="change-data">
|
|
{% for k, v in object.prechange_data.items %}
|
|
<span{% if k in diff_removed %} class="removed"{% endif %}>{{ k }}: {{ v|json }}</span>
|
|
{% endfor %}
|
|
</pre>
|
|
{% endspaceless %}
|
|
{% elif non_atomic_change %}
|
|
{% trans "Warning: Comparing non-atomic change to previous change record" %} (<a href="{% url 'extras:objectchange' pk=prev_change.pk %}">{{ prev_change.pk }}</a>)
|
|
{% else %}
|
|
<span class="text-muted">{% trans "None" %}</span>
|
|
{% endif %}
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div class="col col-md-6">
|
|
<div class="card">
|
|
<h5 class="card-header">{% trans "Post-Change Data" %}</h5>
|
|
<div class="card-body">
|
|
{% if object.postchange_data %}
|
|
{% spaceless %}
|
|
<pre class="change-data">
|
|
{% for k, v in object.postchange_data.items %}
|
|
<span{% if k in diff_added %} class="added"{% endif %}>{{ k }}: {{ v|json }}</span>
|
|
{% endfor %}
|
|
</pre>
|
|
{% endspaceless %}
|
|
{% else %}
|
|
<span class="text-muted">{% trans "None" %}</span>
|
|
{% endif %}
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div class="row mb-3">
|
|
<div class="col col-md-12">
|
|
{% include 'inc/panel_table.html' with table=related_changes_table heading='Related Changes' panel_class='default' %}
|
|
{% if related_changes_count > related_changes_table.rows|length %}
|
|
<div class="float-end">
|
|
<a href="{% url 'extras:objectchange_list' %}?request_id={{ object.request_id }}" class="btn btn-primary">
|
|
{% blocktrans trimmed with count=related_changes_count|add:"1" %}
|
|
See All {{ count }} Changes
|
|
{% endblocktrans %}
|
|
</a>
|
|
</div>
|
|
{% endif %}
|
|
</div>
|
|
</div>
|
|
{% endblock %}
|