diff --git a/netbox/account/views.py b/netbox/account/views.py index a2f21b44e..f5ef534ce 100644 --- a/netbox/account/views.py +++ b/netbox/account/views.py @@ -191,12 +191,9 @@ class ProfileView(LoginRequiredMixin, View): def get(self, request): # Compile changelog table - changelog = ObjectChange.objects.valid_models().restrict(request.user, 'view').filter( - user=request.user - ).prefetch_related( - 'changed_object_type' - )[:20] + changelog = ObjectChange.objects.valid_models().restrict(request.user, 'view').filter(user=request.user)[:20] changelog_table = ObjectChangeTable(changelog) + changelog_table.orderable = False changelog_table.configure(request) return render(request, self.template_name, { diff --git a/netbox/templates/account/profile.html b/netbox/templates/account/profile.html index 20f8ad537..442cce9ba 100644 --- a/netbox/templates/account/profile.html +++ b/netbox/templates/account/profile.html @@ -1,12 +1,10 @@ {% extends 'account/base.html' %} -{% load helpers %} -{% load render_table from django_tables2 %} {% load i18n %} {% block title %}{% trans "User Profile" %}{% endblock %} {% block content %} -
+

{% trans "Account Details" %}

@@ -64,12 +62,7 @@ {% if perms.core.view_objectchange %}
-
-

{% trans "Recent Activity" %}

-
- {% render_table changelog_table 'inc/table.html' %} -
-
+ {% include 'users/inc/user_activity.html' with user=user table=changelog_table %}
{% endif %} diff --git a/netbox/templates/users/inc/user_activity.html b/netbox/templates/users/inc/user_activity.html new file mode 100644 index 000000000..74d6500ab --- /dev/null +++ b/netbox/templates/users/inc/user_activity.html @@ -0,0 +1,16 @@ +{% load i18n %} +{% load render_table from django_tables2 %} + +
+

+ {% trans "Recent Activity" %} + +

+
+ {% render_table table 'inc/table.html' %} +
+
diff --git a/netbox/templates/users/user.html b/netbox/templates/users/user.html index 967cc0537..84e4cac68 100644 --- a/netbox/templates/users/user.html +++ b/netbox/templates/users/user.html @@ -1,14 +1,12 @@ {% extends 'generic/object.html' %} {% load i18n %} -{% load helpers %} -{% load render_table from django_tables2 %} {% block title %}{% trans "User" %} {{ object.username }}{% endblock %} {% block subtitle %}{% endblock %} {% block content %} -
+

{% trans "User" %}

@@ -74,12 +72,7 @@ {% if perms.core.view_objectchange %}
-
-

{% trans "Recent Activity" %}

-
- {% render_table changelog_table 'inc/table.html' %} -
-
+ {% include 'users/inc/user_activity.html' with user=object table=changelog_table %}
{% endif %} diff --git a/netbox/users/views.py b/netbox/users/views.py index 16dacaa46..099bbcf87 100644 --- a/netbox/users/views.py +++ b/netbox/users/views.py @@ -75,8 +75,9 @@ class UserView(generic.ObjectView): template_name = 'users/user.html' def get_extra_context(self, request, instance): - changelog = ObjectChange.objects.restrict(request.user, 'view').filter(user=instance)[:20] + changelog = ObjectChange.objects.valid_models().restrict(request.user, 'view').filter(user=instance)[:20] changelog_table = ObjectChangeTable(changelog) + changelog_table.orderable = False changelog_table.configure(request) return {