tidy up table image dlocks

This commit is contained in:
Ross
2023-06-12 12:34:38 +01:00
parent e0f0c7619a
commit d1ba8c87dc
10 changed files with 66 additions and 154 deletions
+48 -1
View File
@@ -12,7 +12,7 @@ from generic.models import CidUser
from django.contrib.auth.models import User
class ImageColumn(tables.Column):
class SingleImageColumn(tables.Column):
def render(self, value):
try:
thumbnailer = get_thumbnailer(value)
@@ -20,6 +20,53 @@ class ImageColumn(tables.Column):
except InvalidImageFormatError:
return format_html('<span title="{}">Invalid image url<span>', value)
class BlockImageColumn(tables.Column):
def render(self, value):
blocks = []
for obj in value.all():
blocks.append(obj.get_block())
return format_html(
"""<span class='multi-image-block'>
{}
</span>""".format("".join(blocks))
)
class SeriesImageColumn(tables.Column):
def render(self, value):
obj = value.first()
if obj is None:
return "None"
image_object = obj.image
try:
thumbnailer = get_thumbnailer(image_object)
return format_html(
'<img src="/media/{}" /><br/>[{}]',
thumbnailer["exam-list"],
value.count(),
)
except InvalidImageFormatError:
return format_html(
'<span title="{}">Invalid image url<span><br/>[{}]',
image_object,
value.count(),
)
class FirstImageColumn(tables.Column):
def render(self, value):
obj = value.all()
if not obj:
return format_html('<span>No image<span>')
image_object = obj[0].image
try:
thumbnailer = get_thumbnailer(image_object)
return format_html('<img src="/media/{}" />', thumbnailer["exam-list"])
except InvalidImageFormatError:
return format_html('<span title="{}">Invalid image url<span>', image_object)
class CidUserTable(tables.Table):
# edit = tables.LinkColumn(