diff options
author | Étienne Loks <etienne.loks@iggdrasil.net> | 2018-05-11 17:33:21 +0200 |
---|---|---|
committer | Étienne Loks <etienne.loks@iggdrasil.net> | 2018-06-12 08:44:34 +0200 |
commit | 11e557cc8a28628ae777415fa5c04196c555e749 (patch) | |
tree | d918dbbf26809c9f9ea36131008f93bdd8ddc1cd /ishtar_common | |
parent | 5b61dfac5543d5f9c0bbfd58b4aa1b383d3bfb2b (diff) | |
download | Ishtar-11e557cc8a28628ae777415fa5c04196c555e749.tar.bz2 Ishtar-11e557cc8a28628ae777415fa5c04196c555e749.zip |
Adapt random image to M2M images (refs #4076)
Diffstat (limited to 'ishtar_common')
-rw-r--r-- | ishtar_common/utils.py | 40 |
1 files changed, 23 insertions, 17 deletions
diff --git a/ishtar_common/utils.py b/ishtar_common/utils.py index 2af5212ca..7c77fc3d1 100644 --- a/ishtar_common/utils.py +++ b/ishtar_common/utils.py @@ -178,10 +178,12 @@ def disable_for_loaddata(signal_handler): return wrapper -def _get_image_link(item): +def _get_image_link(rel): + item = rel.item + image = rel.image # manage missing images - if not item.thumbnail or not item.thumbnail.url or not item.image \ - or not item.image.url: + if not image.thumbnail or not image.thumbnail.url or not image.image \ + or not image.image.url: return "" return mark_safe(u""" <div class="col col-lg-3"> @@ -206,8 +208,8 @@ def _get_image_link(item): <script type="text/javascript"> lightGallery(document.getElementById('lightgallery-rand-img')); </script>""".format( - item.image.url, - item.thumbnail.url, + image.image.url, + image.thumbnail.url, unicode(item.__class__._meta.verbose_name), unicode(item), reverse(item.SHOW_URL, args=[item.pk, '']), @@ -216,20 +218,24 @@ def _get_image_link(item): def get_random_item_image_link(request): - from archaeological_operations.models import Operation - from archaeological_context_records.models import ContextRecord - from archaeological_finds.models import Find + from archaeological_operations.models import OperationImage, Operation + from archaeological_context_records.models import ContextRecordImage, \ + ContextRecord + from archaeological_finds.models import Find, FindImage, TreatmentImage ope_image_nb, cr_image_nb, find_image_nb = 0, 0, 0 - q_ope = Operation.objects.filter( - thumbnail__isnull=False, image__isnull=False - ).exclude(thumbnail='').exclude(image='') - q_cr = ContextRecord.objects.filter( - thumbnail__isnull=False, image__isnull=False - ).exclude(thumbnail='').exclude(image='') - q_find = Find.objects.filter( - thumbnail__isnull=False, image__isnull=False - ).exclude(thumbnail='').exclude(image='') + q_ope = OperationImage.objects.filter( + image__thumbnail__isnull=False, + image__image__isnull=False + ).exclude(image__thumbnail='').exclude(image__image='') + q_cr = ContextRecordImage.objects.filter( + image__thumbnail__isnull=False, + image__image__isnull=False + ).exclude(image__thumbnail='').exclude(image__image='') + q_find = FindImage.objects.filter( + image__thumbnail__isnull=False, + image__image__isnull=False + ).exclude(image__thumbnail='').exclude(image__image='') if request.user.has_perm('archaeological_operations.view_operation', Operation): ope_image_nb = q_ope.count() |