]> git.parisson.com Git - teleforma.git/commitdiff
change seminar / conference exports
authorYoan Le Clanche <yoanl@pilotsystems.net>
Thu, 4 Mar 2021 15:29:58 +0000 (16:29 +0100)
committerYoan Le Clanche <yoanl@pilotsystems.net>
Thu, 4 Mar 2021 15:29:58 +0000 (16:29 +0100)
teleforma/admin.py
teleforma/models/pro.py
teleforma/templatetags/teleforma_tags.py

index ae981e96d5ec5c6b1f65d0c5fa91461097b25d87..52394c30039eb4826724f41af37d638d72362899 100644 (file)
@@ -1,6 +1,7 @@
 # -*- coding: utf-8 -*-
 from telemeta.util.unicode import UnicodeWriter
 from teleforma.models import *
+from teleforma.templatetags.teleforma_tags import fancy_duration_shop_like, fancy_seconds
 from django.contrib import admin
 from django.contrib.auth.models import User
 from django.contrib.auth.admin import UserAdmin
@@ -161,7 +162,15 @@ class ConferenceAdmin(admin.ModelAdmin):
         writer.writerow(("id", "nom", "prix", "code produit"))
 
         for conference in queryset.order_by('-publish_date'):
-            row = (conference.id, conference.title, conference.price, conference.product_code)
+            title = conference.pretty_title
+            
+            if conference.webclass:
+                title = u"Webconférence - " + title
+            if conference.duration:
+                title += u" - Durée : %s" % (fancy_duration_shop_like(conference.duration))
+            if conference.webclass:
+                title += u" (%s live + %s de validation des acquis)" % (fancy_seconds(conference.webclass_duration), fancy_seconds(conference.webclass_hours_complementary.as_seconds()))
+            row = (conference.id, title, conference.price, conference.product_code)
             writer.writerow(row)
         return response
 
@@ -206,7 +215,7 @@ class SeminarAdmin(admin.ModelAdmin):
         writer.writerow(("id", "nom", "prix", "code produit"))
 
         for seminar in queryset.order_by('-publish_date'):
-            row = (seminar.id, seminar.title, seminar.price, seminar.product_code)
+            row = (seminar.id, seminar.pretty_title_with_duration, seminar.price, seminar.product_code)
             writer.writerow(row)
         return response
 
index cfb4d66012ab51f3e7f391bac54016b94e89c9cc..a10b403e6b5233bdab06dc422cf8e1da8f552ea1 100644 (file)
@@ -152,10 +152,10 @@ class Seminar(ClonableMixin, Displayable, ProductCodeMixin, SuggestionsMixin):
 
     @property
     def pretty_title_with_duration(self):
-        from pbshop.templatetags.tags import fancy_duration
         pretty_title = self.pretty_title
         if self.duration:
-            pretty_title += u" - Durée : %s" % (fancy_duration(self.duration))
+            from teleforma.templatetags.teleforma_tags import fancy_duration_shop_like
+            pretty_title += u" - Durée : %s" % (fancy_duration_shop_like(self.duration))
         return pretty_title
 
     def public_url(self):
index 331a1c5d30f500c2668d66422817ad96235697f6..00df46999b9e355874b96375f4fd84c81ca7eb5f 100644 (file)
@@ -317,6 +317,19 @@ def fancy_duration(duration):
         minutes = str(minutes)
     time +=  minutes + 'mn'
     return time
+
+@register.filter
+def fancy_duration_shop_like(duration):
+    if not duration:
+        return ""
+    time = ''
+    d = unicode(duration).split(':')
+    hours = int(d[0])
+    minutes = int(d[1])
+    if hours:
+        time += str(hours) + 'h'
+    time += "%02d" % minutes
+    return time
     
 @register.filter
 def fancy_seconds(seconds):