From a1314c683ab7ab7fc2493c3ade479aba8838d408 Mon Sep 17 00:00:00 2001 From: Jonas 12t Date: Thu, 11 Nov 2021 16:28:10 +0400 Subject: [PATCH] Membership add membership to AuthBillet for user --- DjangoFiles/Administration/admin_public.py | 2 +- DjangoFiles/ApiBillet/views.py | 1 + .../migrations/0004_auto_20211111_1627.py | 47 +++++++++++++ DjangoFiles/AuthBillet/models.py | 21 +++++- .../migrations/0019_configuration_logo.py | 19 ++++++ .../migrations/0020_auto_20211111_1219.py | 19 ++++++ .../static/arnaud_mvc/css/creative.css | 2 +- .../BaseBillet/templates/arnaud_mvc/base.html | 51 ++++++++++++-- .../templates/arnaud_mvc/calendar.html | 8 +-- .../templates/arnaud_mvc/lieux.html | 2 +- .../BaseBillet/templates/arnaud_mvc/menu.html | 4 +- .../templates/arnaud_mvc/modals.html | 66 +++++++++++++++++++ .../templates/arnaud_mvc/nav_filter.html | 2 +- DjangoFiles/BaseBillet/views.py | 6 ++ .../migrations/0003_auto_20211111_1219.py | 19 ++++++ DjangoFiles/QrcodeCashless/models.py | 2 +- 16 files changed, 253 insertions(+), 18 deletions(-) create mode 100644 DjangoFiles/AuthBillet/migrations/0004_auto_20211111_1627.py create mode 100644 DjangoFiles/BaseBillet/migrations/0019_configuration_logo.py create mode 100644 DjangoFiles/BaseBillet/migrations/0020_auto_20211111_1219.py create mode 100644 DjangoFiles/BaseBillet/templates/arnaud_mvc/modals.html create mode 100644 DjangoFiles/QrcodeCashless/migrations/0003_auto_20211111_1219.py diff --git a/DjangoFiles/Administration/admin_public.py b/DjangoFiles/Administration/admin_public.py index 1043443..8a781e9 100644 --- a/DjangoFiles/Administration/admin_public.py +++ b/DjangoFiles/Administration/admin_public.py @@ -158,6 +158,6 @@ class CarteCashlessAdmin(admin.ModelAdmin): get_origin.short_description = 'Origine' search_fields = ('tag_id', 'uuid', 'number') - list_filter = ('tag_id', 'uuid', 'number') + list_filter = ('tag_id', 'uuid', 'number', 'detail__origine') public_admin_site.register(CarteCashless, CarteCashlessAdmin) diff --git a/DjangoFiles/ApiBillet/views.py b/DjangoFiles/ApiBillet/views.py index 963a6ac..235d5d7 100644 --- a/DjangoFiles/ApiBillet/views.py +++ b/DjangoFiles/ApiBillet/views.py @@ -137,6 +137,7 @@ class ReservationViewset(viewsets.ViewSet): permission_classes = [TenantAdminPermission] return [permission() for permission in permission_classes] +# class Adhesion(viewsets.ViewSet): class TicketPdf(WeasyTemplateView): permission_classes = [AllowAny] diff --git a/DjangoFiles/AuthBillet/migrations/0004_auto_20211111_1627.py b/DjangoFiles/AuthBillet/migrations/0004_auto_20211111_1627.py new file mode 100644 index 0000000..1bdf95e --- /dev/null +++ b/DjangoFiles/AuthBillet/migrations/0004_auto_20211111_1627.py @@ -0,0 +1,47 @@ +# Generated by Django 2.2 on 2021-11-11 12:27 + +from django.conf import settings +from django.db import migrations, models +import django.db.models.deletion + + +class Migration(migrations.Migration): + + dependencies = [ + ('Customers', '0001_initial'), + ('AuthBillet', '0003_auto_20211022_1445'), + ] + + operations = [ + migrations.AddField( + model_name='tibilletuser', + name='accept_newsletter', + field=models.BooleanField(default=True, verbose_name="J'accepte de recevoir la newsletter"), + ), + migrations.AddField( + model_name='tibilletuser', + name='birth_date', + field=models.DateField(blank=True, null=True), + ), + migrations.AddField( + model_name='tibilletuser', + name='last_see', + field=models.DateTimeField(auto_now=True), + ), + migrations.AddField( + model_name='tibilletuser', + name='postal_code', + field=models.IntegerField(blank=True, null=True), + ), + migrations.CreateModel( + name='Membership', + fields=[ + ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), + ('date_added', models.DateTimeField(auto_now_add=True)), + ('first_contribution', models.DateField(blank=True, null=True)), + ('last_contribution', models.DateField(blank=True, null=True)), + ('tenant', models.ForeignKey(on_delete=django.db.models.deletion.PROTECT, to='Customers.Client')), + ('user', models.ForeignKey(on_delete=django.db.models.deletion.PROTECT, related_name='membership', to=settings.AUTH_USER_MODEL)), + ], + ), + ] diff --git a/DjangoFiles/AuthBillet/models.py b/DjangoFiles/AuthBillet/models.py index 69edf63..faf1759 100644 --- a/DjangoFiles/AuthBillet/models.py +++ b/DjangoFiles/AuthBillet/models.py @@ -55,7 +55,6 @@ class TibilletManager(BaseUserManager): staff_group = Group.objects.get_or_create(name="staff")[0] user.groups.add(staff_group) - class TibilletUser(AbstractUser): #TODO regarder du coté du dashboard de jet, ça plante avec uuid ! @@ -70,6 +69,13 @@ class TibilletUser(AbstractUser): username = models.CharField(max_length=200, unique=True) phone = models.CharField(max_length=20, null=True, blank=True) + last_see = models.DateTimeField(auto_now=True) + accept_newsletter = models.BooleanField( + default=True, verbose_name=_("J'accepte de recevoir la newsletter")) + postal_code = models.IntegerField(null=True, blank=True) + birth_date = models.DateField(null=True, blank=True) + + TYPE_TERM, TYPE_HUM, TYPE_ANDR = 'TE', 'HU', 'AN' ESPECE_CHOICES = ( (TYPE_TERM, 'Terminal'), @@ -206,6 +212,19 @@ class HumanUser(TibilletUser): super().save(*args, **kwargs) + + +class Membership(models.Model): + user = models.ForeignKey(TibilletUser, on_delete=models.PROTECT, related_name='membership') + tenant = models.ForeignKey(Client, on_delete=models.PROTECT) + + date_added = models.DateTimeField(auto_now_add=True) + first_contribution = models.DateField(null=True, blank=True) + last_contribution = models.DateField(null=True, blank=True) + + + + # --------------------------------------------------------------------------------------------------------------------- class SuperHumanUserManager(TibilletManager): diff --git a/DjangoFiles/BaseBillet/migrations/0019_configuration_logo.py b/DjangoFiles/BaseBillet/migrations/0019_configuration_logo.py new file mode 100644 index 0000000..cce6bac --- /dev/null +++ b/DjangoFiles/BaseBillet/migrations/0019_configuration_logo.py @@ -0,0 +1,19 @@ +# Generated by Django 2.2 on 2021-11-11 06:17 + +from django.db import migrations +import stdimage.models + + +class Migration(migrations.Migration): + + dependencies = [ + ('BaseBillet', '0018_auto_20211111_1003'), + ] + + operations = [ + migrations.AddField( + model_name='configuration', + name='logo', + field=stdimage.models.StdImageField(blank=True, null=True, upload_to='images/', verbose_name='Background'), + ), + ] diff --git a/DjangoFiles/BaseBillet/migrations/0020_auto_20211111_1219.py b/DjangoFiles/BaseBillet/migrations/0020_auto_20211111_1219.py new file mode 100644 index 0000000..f728aa8 --- /dev/null +++ b/DjangoFiles/BaseBillet/migrations/0020_auto_20211111_1219.py @@ -0,0 +1,19 @@ +# Generated by Django 2.2 on 2021-11-11 08:19 + +from django.db import migrations +import stdimage.models + + +class Migration(migrations.Migration): + + dependencies = [ + ('BaseBillet', '0019_configuration_logo'), + ] + + operations = [ + migrations.AlterField( + model_name='configuration', + name='logo', + field=stdimage.models.StdImageField(blank=True, null=True, upload_to='images/', verbose_name='Logo'), + ), + ] diff --git a/DjangoFiles/BaseBillet/static/arnaud_mvc/css/creative.css b/DjangoFiles/BaseBillet/static/arnaud_mvc/css/creative.css index 1fb8f34..d745589 100644 --- a/DjangoFiles/BaseBillet/static/arnaud_mvc/css/creative.css +++ b/DjangoFiles/BaseBillet/static/arnaud_mvc/css/creative.css @@ -615,7 +615,7 @@ h4 { /* FORM */ .search { display: none; - position: absolute; + position: fixed; width: 100%; height: 100vh; background-color: #000000e0; diff --git a/DjangoFiles/BaseBillet/templates/arnaud_mvc/base.html b/DjangoFiles/BaseBillet/templates/arnaud_mvc/base.html index 04fc8ae..d110ba3 100644 --- a/DjangoFiles/BaseBillet/templates/arnaud_mvc/base.html +++ b/DjangoFiles/BaseBillet/templates/arnaud_mvc/base.html @@ -4,6 +4,7 @@ + TiBillet @@ -13,6 +14,10 @@ + {# #} + {# #} + {# #} + {% endblock header %} @@ -38,14 +43,28 @@ @@ -56,9 +75,11 @@ + {% endblock nav %} +{% include 'arnaud_mvc/modals.html' %} {% block content %} {% endblock content %} @@ -69,6 +90,24 @@ {% endblock footer %} + + + diff --git a/DjangoFiles/BaseBillet/templates/arnaud_mvc/calendar.html b/DjangoFiles/BaseBillet/templates/arnaud_mvc/calendar.html index b3f879a..3068f7d 100644 --- a/DjangoFiles/BaseBillet/templates/arnaud_mvc/calendar.html +++ b/DjangoFiles/BaseBillet/templates/arnaud_mvc/calendar.html @@ -3,18 +3,18 @@ {% for block_calendrier in events|range_by:5 %}
-{#

{{ configuration.organisation.upper }}

#} + {#

{{ configuration.organisation.upper }}

#} {% for event in block_calendrier %} diff --git a/DjangoFiles/BaseBillet/templates/arnaud_mvc/lieux.html b/DjangoFiles/BaseBillet/templates/arnaud_mvc/lieux.html index 913511f..9cd87b7 100644 --- a/DjangoFiles/BaseBillet/templates/arnaud_mvc/lieux.html +++ b/DjangoFiles/BaseBillet/templates/arnaud_mvc/lieux.html @@ -53,7 +53,7 @@
- {% include 'arnaud_mvc/menu.html' %} + {% include 'arnaud_mvc/menu.html' %} diff --git a/DjangoFiles/BaseBillet/templates/arnaud_mvc/menu.html b/DjangoFiles/BaseBillet/templates/arnaud_mvc/menu.html index f8e0b53..f896d7c 100644 --- a/DjangoFiles/BaseBillet/templates/arnaud_mvc/menu.html +++ b/DjangoFiles/BaseBillet/templates/arnaud_mvc/menu.html @@ -3,7 +3,7 @@