|
|
@@ -1,3 +1,4 @@
|
|
|
+from django.conf import settings
|
|
|
from django.contrib import messages
|
|
|
from django.contrib.auth.decorators import permission_required
|
|
|
from django.contrib.auth.mixins import PermissionRequiredMixin
|
|
|
@@ -5,9 +6,11 @@ from django.db import transaction
|
|
|
from django.db.models import Count, OuterRef, Subquery
|
|
|
from django.shortcuts import get_object_or_404, redirect, render
|
|
|
from django.views.generic import View
|
|
|
+from django_tables2 import RequestConfig
|
|
|
|
|
|
from extras.models import Graph, GRAPH_TYPE_PROVIDER
|
|
|
from utilities.forms import ConfirmationForm
|
|
|
+from utilities.paginator import EnhancedPaginator
|
|
|
from utilities.views import (
|
|
|
BulkDeleteView, BulkEditView, BulkImportView, ObjectDeleteView, ObjectEditView, ObjectListView,
|
|
|
)
|
|
|
@@ -38,9 +41,18 @@ class ProviderView(PermissionRequiredMixin, View):
|
|
|
circuits = Circuit.objects.filter(provider=provider).prefetch_related('type', 'tenant', 'terminations__site')
|
|
|
show_graphs = Graph.objects.filter(type=GRAPH_TYPE_PROVIDER).exists()
|
|
|
|
|
|
+ circuits_table = tables.CircuitTable(circuits, orderable=False)
|
|
|
+ circuits_table.columns.hide('provider')
|
|
|
+
|
|
|
+ paginate = {
|
|
|
+ 'paginator_class': EnhancedPaginator,
|
|
|
+ 'per_page': request.GET.get('per_page', settings.PAGINATE_COUNT)
|
|
|
+ }
|
|
|
+ RequestConfig(request, paginate).configure(circuits_table)
|
|
|
+
|
|
|
return render(request, 'circuits/provider.html', {
|
|
|
'provider': provider,
|
|
|
- 'circuits': circuits,
|
|
|
+ 'circuits_table': circuits_table,
|
|
|
'show_graphs': show_graphs,
|
|
|
})
|
|
|
|