events - Update models
authorCorentin Wallez <corentin@wallez.net>
Sat, 2 Feb 2013 16:55:51 +0000 (16:55 +0000)
committerCorentin Wallez <corentin@wallez.net>
Sat, 2 Feb 2013 16:59:34 +0000 (16:59 +0000)
* Add a Foreign key from Event to it's main dsc
* Add __unicode__
* Add a missing Meta class

xnet/events/admin.py
xnet/events/models.py

index 08f36a1..43f3ddf 100644 (file)
@@ -19,11 +19,11 @@ class EventDescriptionAdmin(admin.ModelAdmin):
 admin.site.register(models.EventDescription, EventDescriptionAdmin)
 
 
-class PaymentOptionAdmin(admin.ModelAdmin):
+class PriceOptionAdmin(admin.ModelAdmin):
     list_display = ['name', 'amount']
     search_fields = ['name']
 
-admin.site.register(models.PaymentOption, PaymentOptionAdmin)
+admin.site.register(models.PriceOption, PriceOptionAdmin)
 
 
 class RegistrationAdmin(admin.ModelAdmin):
index 04c7d6a..49cee8f 100644 (file)
@@ -17,6 +17,8 @@ class Event(models.Model):
     )
 
     short = models.SlugField(max_length=40, verbose_name=_(u"nom raccourci"))
+    main_description = models.ForeignKey('events.EventDescription', null=True, blank=True,
+            verbose_name=_(u"description principale"), related_name=_(u"+"))
     simple = models.BooleanField(verbose_name=_(u"simple"))
 
     registration_end_date = models.DateTimeField(null=True, blank=True,
@@ -31,6 +33,9 @@ class Event(models.Model):
     start_date = models.DateTimeField(null=True, blank=True, verbose_name=_(u"date de début"))
     end_date = models.DateTimeField(null=True, blank=True, verbose_name=_(u"date de fin"))
 
+    def __unicode__(self):
+        return self.short
+
     class Meta:
         verbose_name = _(u"événement")
         verbose_name_plural = _(u"événements")
@@ -43,17 +48,23 @@ class EventDescription(models.Model):
     registered_limit = models.PositiveIntegerField(verbose_name=_(u"limites du nombre d'inscrits"))
     main = models.BooleanField(verbose_name=_(u"principale"))
 
+    def __unicode__(self):
+        return self.name
+
     class Meta:
         verbose_name = _(u"description d'événement")
         verbose_name_plural = _(u"descriptions d'événements")
 
 
-class PaymentOption(models.Model):
+class PriceOption(models.Model):
     name = models.CharField(max_length=100, verbose_name=_(u"nom"))
-    amount = models.FloatField(verbose_name=_(u"montant"))
+    amount = models.IntegerField(verbose_name=_(u"montant (centimes)"))
     event_description = models.ForeignKey(EventDescription, verbose_name=_(u"description associée"),
             related_name=_(u"+"))
 
+    def __unicode__(self):
+        return self.name
+
     class Meta:
         verbose_name = _(u"option de paiement")
         verbose_name_plural = _(u"options de paiement")
@@ -74,8 +85,15 @@ class Registration(models.Model):
             related_name=_(u"+"))
     event = models.ForeignKey(EventDescription, verbose_name=_(u"événement associé"),
             related_name=_(u"+"))
-    options = models.ForeignKey(PaymentOption, verbose_name=_(u"options associées"),
+    option = models.ForeignKey(PriceOption, verbose_name=_(u"options associées"),
             related_name=_(u"+"))
+    date_registered = models.DateTimeField(verbose_name=_(u"date d'enregistrement"))
     status = models.CharField(max_length=10, choices=STATUS_CHOICES, verbose_name=_(u"statut"))
 
+    def __unicode__(self):
+        return "%s, %s, %s".format(unicode(user), unicode(event), unicode(option))
+
+    class Meta:
+        verbose_name = _(u"option de paiement")
+        verbose_name_plural = _(u"options de paiement")