|
@@ -2,17 +2,23 @@
|
|
|
import datetime
|
|
|
import random
|
|
|
import uuid
|
|
|
+import os
|
|
|
from decimal import Decimal
|
|
|
|
|
|
from django.db import models
|
|
|
from django.db.models.signals import post_save
|
|
|
from django.dispatch import receiver
|
|
|
+from django.core.files.storage import FileSystemStorage
|
|
|
+from django.conf import settings
|
|
|
|
|
|
from coin.offers.models import OfferSubscription
|
|
|
from coin.members.models import Member
|
|
|
from coin.html2pdf import render_as_pdf
|
|
|
|
|
|
|
|
|
+
|
|
|
+invoices_storage = FileSystemStorage(location=os.path.join(settings.PRIVATE_FILES_ROOT, 'invoices/'))
|
|
|
+
|
|
|
def next_invoice_number():
|
|
|
"Détermine un numéro de facture aléatoire"
|
|
|
return u'%s%02i-%i-%i' % (datetime.date.today().year,
|
|
@@ -47,7 +53,7 @@ class Invoice(models.Model):
|
|
|
related_name='invoices',
|
|
|
verbose_name='Membre',
|
|
|
on_delete=models.SET_NULL)
|
|
|
- pdf = models.FileField(upload_to='invoices',
|
|
|
+ pdf = models.FileField(storage=invoices_storage,
|
|
|
null=True, blank=True,
|
|
|
verbose_name=u'Facture en PDF')
|
|
|
|