]> git.parisson.com Git - teleforma.git/commitdiff
Handle shop promo code & update fifpl
authorYoan Le Clanche <yoan@ellington.pilotsystems.net>
Tue, 10 Dec 2019 16:42:45 +0000 (17:42 +0100)
committerYoan Le Clanche <yoan@ellington.pilotsystems.net>
Tue, 10 Dec 2019 16:42:45 +0000 (17:42 +0100)
teleforma/static/teleforma/images/attestation_fifpl_v3.png [new file with mode: 0644]
teleforma/templates/teleforma/seminar_testimonial_payback.html
teleforma/views/pro.py

diff --git a/teleforma/static/teleforma/images/attestation_fifpl_v3.png b/teleforma/static/teleforma/images/attestation_fifpl_v3.png
new file mode 100644 (file)
index 0000000..af088c4
Binary files /dev/null and b/teleforma/static/teleforma/images/attestation_fifpl_v3.png differ
index 0b33110110a15b53ce8c9853fc28177a80d650ed..0bb5a2f6898b73a88c8b81126a190af76c970139 100644 (file)
 
 <style>
  @page {
-  background-image: url({{ STATIC_URL }}teleforma/images/attestation_fifpl_v2.png);
-
+  background-image: url({{ STATIC_URL }}teleforma/images/attestation_fifpl_v3.png);
+  
   @frame user {
   -pdf-frame-content: user;
-    top: 397px;
-    left: 260px;
+    top: 315px;
+    left: 280px;
   }
 
   @frame seminar {
   -pdf-frame-content: seminar;
-    top: 460px;
-    left: 75px;
+    top: 380px;
+    left: 110px;
   }
 
   @frame date_start_d {
   -pdf-frame-content: date_start_d;
-    top: 542px;
-    left: 110px;
+    top: 412px;
+    left: 137px;
   }
 
  @frame date_start_m {
   -pdf-frame-content: date_start_m;
-    top: 542px;
-    left: 160px;
+    top: 412px;
+    left: 165px;
   }
  @frame date_start_y {
   -pdf-frame-content: date_start_y;
-    top: 542px;
-    left: 210px;
+    top: 412px;
+    left: 192px;
   }
 
   @frame date_end_d {
   -pdf-frame-content: date_end_d;
-    top: 542px;
-    left: 290px;
+    top: 412px;
+    left: 235px;
   }
 
  @frame date_end_m {
   -pdf-frame-content: date_end_m;
-    top: 542px;
-    left: 340px;
+    top: 412px;
+    left: 262px;
   }
  @frame date_end_y {
   -pdf-frame-content: date_end_y;
-    top: 542px;
-    left: 390px;
+    top: 412px;
+    left: 290px;
   }
 
   @frame user-hours {
   -pdf-frame-content: user-hours;
-    top: 576px;
-    left: 390px;
+    top: 445px;
+    left: 420px;
   }
 
   @frame seminar-hours {
   -pdf-frame-content: seminar-hours;
-    top: 630px;
-    left: 390px;
+    top: 525px;
+    left: 230px;
   }
 
   @frame price-ht {
   -pdf-frame-content: price-ht;
-    top: 719px;
-    left: 377px;
+    top: 629px;
+    left: 390px;
   }
 
   @frame price-ttc {
   -pdf-frame-content: price-ttc;
-    top: 719px;
-    left: 540px;
+    top: 644px;
+    left: 140px;
   }
 
   @frame date-validated {
   -pdf-frame-content: date-validated;
-    top: 650px;
-    left: 300px;
+    top: 549px;
+    left: 310px;
   }
 
   @frame date-now {
   -pdf-frame-content: date-now;
-    top: 796px;
-    left: 330px;
+    top: 718px;
+    left: 270px;
   }
 
 }
 
 
 
-<div id="date_start_d">
+<div id="date_start_d" class="date">
   {% if first_revision.date_modified %}{{ first_revision.date_modified|date:'j' }}{% else %}{{ first_revision.date|date:'j' }}{% endif %}
 </div>
 <div id="date_start_m">
   {% if first_revision.date_modified %}{{ first_revision.date_modified|date:'m' }}{% else %}{{ first_revision.date|date:'m' }}{% endif %}
 </div>
 <div id="date_start_y">
-  {% if first_revision.date_modified %}{{ first_revision.date_modified|date:'Y' }}{% else %}{{ first_revision.date|date:'Y' }}{% endif %}
+  {% if first_revision.date_modified %}{{ first_revision.date_modified|date:'y' }}{% else %}{{ first_revision.date|date:'y' }}{% endif %}
 </div>
 
 <div id="date_end_d">
     {% if testimonial.date_modified %}{{ testimonial.date_modified|date:'m' }}{% else %}{{ testimonial.date_added|date:'m' }}{% endif %}
 </div>
 <div id="date_end_y">
-    {% if testimonial.date_modified %}{{ testimonial.date_modified|date:'Y' }}{% else %}{{ testimonial.date_added|date:'Y' }}{% endif %}
+    {% if testimonial.date_modified %}{{ testimonial.date_modified|date:'y' }}{% else %}{{ testimonial.date_added|date:'y' }}{% endif %}
 </div>
 
 
 </div>
 
 <div id="price-ht">
-  {{ seminar.price|integer }}
+  {{ price|floatformat:2 }}
 </div>
 
 <div id="price-ttc">
-  {{ seminar.price|integer }}
+  {{ price|floatformat:2 }}
 </div>
 
 
index a9c373787c3f8a3aa84e34fbbb2aaa182eeb0fa4..9292c5a3f53799a810dbeb7d1eeef5dad7227d1d 100644 (file)
@@ -62,7 +62,7 @@ import csv
 from forms_builder.forms.forms import FormForForm
 from forms_builder.forms.models import Form
 from forms_builder.forms.signals import form_invalid, form_valid
-
+from pbcart.models import Cart
 from quiz.views import QuizTake
 
 REVISION_DATE_FILTER = datetime.datetime(2015,2,2)
@@ -834,6 +834,14 @@ class TestimonialPaybackView(TestimonialView):
     def get_context_data(self, **kwargs):
         context = super(TestimonialPaybackView, self).get_context_data(**kwargs)
         seminar = context['seminar']
+        context['price'] = seminar.price
+        # recompute price if use has used a promo code
+        for cart in Cart.objects.filter(user=self.request.user, status=Cart.STATE_PAYMENT_ACCEPTED):
+            if cart.has_item(seminar):
+                if cart.promo_code and seminar in cart.promo_code.seminars.all():
+                    context['price'] = seminar.price - (seminar.price * cart.promo_code.reduction / 100.0)
+                    break
+        
         context['answers'] = Answer.objects.filter(question__in=seminar.question.all(),
                                                    user=self.request.user,
                                                    validated=True).order_by('question__rank')