+ onclick="populateSearch('channel', '{{ cell|escapejs }}')">
{{ cell }}
{% if row.cells.num_users is not None %}
@@ -202,10 +202,22 @@
{% elif column.name == 'net' %}
+ onclick="populateSearch('net', '{{ cell|escapejs }}')">
{{ cell }}
|
+ {% elif cell == True or cell == False %}
+
+ {% if cell == True %}
+
+
+
+ {% else %}
+
+
+
+ {% endif %}
+ |
{% else %}
{{ cell }}
diff --git a/core/views/ui/drilldown.py b/core/views/ui/drilldown.py
index 829c28c..723cc64 100644
--- a/core/views/ui/drilldown.py
+++ b/core/views/ui/drilldown.py
@@ -171,6 +171,15 @@ class DrilldownTableView(SingleTableView):
def get(self, request, *args, **kwargs):
self.object_list = self.get_queryset(request)
+ show = []
+ if len(self.object_list) > 0:
+ first = self.object_list[0]
+ fields = first.keys()
+ for field in fields:
+ values_present = all([x[field] is not None for x in self.object_list])
+ if values_present:
+ if field not in show:
+ show.append(field)
allow_empty = self.get_allow_empty()
if not allow_empty:
@@ -190,8 +199,18 @@ class DrilldownTableView(SingleTableView):
for k, v in self.context.items():
if k not in context:
context[k] = v
- context["hide"] = ["date", "time", "id", "num", "channel_nsfw", "num_users", "num_chans", "exemption", "version_sentiment"]
-
+ context["hide"] = [
+ "date",
+ "time",
+ "id",
+ "num",
+ "channel_nsfw",
+ "num_users",
+ "num_chans",
+ "exemption",
+ "version_sentiment",
+ ]
+ context["show"] = show
if request.method == "GET":
if not request.htmx:
self.template_name = "ui/drilldown/drilldown.html"
diff --git a/core/views/ui/tables.py b/core/views/ui/tables.py
index 2d2f0a7..4b61661 100644
--- a/core/views/ui/tables.py
+++ b/core/views/ui/tables.py
@@ -5,6 +5,7 @@ from django_tables2.columns.base import BoundColumn
# Make the table column headings lowercase
orig_Column_header = BoundColumn.header
+
@property
def format_header(self):
header = orig_Column_header.__get__(self)
@@ -19,6 +20,7 @@ def format_header(self):
return header
+
BoundColumn.header = format_header
|