|
@@ -49,10 +49,19 @@ class Member(models.Model):
|
|
|
country = models.CharField(max_length=200);
|
|
|
entry_date = models.DateField(null=False, blank=False, default=datetime.date.today, help_text='date de première adhésion');
|
|
|
resign_date = models.DateField(null=True, blank=True, help_text='date de départ de l\'association');
|
|
|
-
|
|
|
+
|
|
|
def __unicode__(self):
|
|
|
- return self.first_name+' '+self.last_name;
|
|
|
+ name = self.first_name+' '+self.last_name;
|
|
|
+ if (self.organization_name):
|
|
|
+ name += ' (%s)' % self.organization_name
|
|
|
+ return name
|
|
|
|
|
|
+ # Renvoi la date de fin de la dernière cotisation du membre
|
|
|
+ def end_date_of_membership(self):
|
|
|
+ try:
|
|
|
+ return self.membership_fees.order_by('-end_date')[0].end_date
|
|
|
+ except:
|
|
|
+ return None
|
|
|
|
|
|
class CryptoKey(models.Model):
|
|
|
|
|
@@ -63,14 +72,17 @@ class CryptoKey(models.Model):
|
|
|
member = models.ForeignKey('Member');
|
|
|
|
|
|
def __unicode__(self):
|
|
|
- return self.member.__str__();
|
|
|
+ return '%s [%s]' % (self.member.__str__(), self.type);
|
|
|
|
|
|
class MembershipFee(models.Model):
|
|
|
- member = models.ForeignKey('Member');
|
|
|
+ member = models.ForeignKey('Member', related_name='membership_fees');
|
|
|
amount = models.IntegerField(null=False, default='20', help_text='en €');
|
|
|
start_date = models.DateField(null=False, blank=False, default=datetime.date.today, help_text='date de début de cotisation');
|
|
|
end_date = models.DateField(null=False, blank=False, default=datetime.date.today() + datetime.timedelta(365), help_text='fin de validité de cotisation');
|
|
|
|
|
|
+ def __unicode__(self):
|
|
|
+ return ('%s - %s - %i€' % (self.member, self.start_date, self.amount));
|
|
|
+
|
|
|
#~ Lors de la sauvegarde d'un membre, cette fonction est exécutée pour mettre à jour les données dans le LDAP
|
|
|
@receiver(post_save, sender=Member)
|
|
|
def sync_ldap(sender, instance, created, **kwargs):
|