Add real BD fee

This commit is contained in:
Jean-Baptiste Doderlein 2022-08-30 07:54:39 +00:00
parent 8a03defc37
commit 121c49a5b6
11 changed files with 188 additions and 28 deletions

View file

@ -0,0 +1,42 @@
# Generated by Django 2.2.28 on 2022-08-17 20:53
from django.conf import settings
from django.db import migrations, models
import django.db.models.deletion
class Migration(migrations.Migration):
initial = True
dependencies = [
('member', '0001_initial'),
('permission', '0001_initial'),
migrations.swappable_dependency(settings.AUTH_USER_MODEL),
]
operations = [
migrations.AddField(
model_name='membership',
name='roles',
field=models.ManyToManyField(related_name='memberships', to='permission.Role', verbose_name='roles'),
),
migrations.AddField(
model_name='membership',
name='user',
field=models.ForeignKey(on_delete=django.db.models.deletion.PROTECT, related_name='memberships', to=settings.AUTH_USER_MODEL, verbose_name='user'),
),
migrations.AddField(
model_name='club',
name='parent_club',
field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.PROTECT, to='member.Club', verbose_name='parent club'),
),
migrations.AddIndex(
model_name='profile',
index=models.Index(fields=['user'], name='member_prof_user_id_30c316_idx'),
),
migrations.AddIndex(
model_name='membership',
index=models.Index(fields=['user'], name='member_memb_user_id_945dbc_idx'),
),
]

View file

@ -0,0 +1,97 @@
"""Migration member default BDE BDA"""
from django.db import migrations
def create_initial_club(apps, schema_editor):
"""
The clubs BDE BDA BDS are pre-injected.
"""
Club = apps.get_model("member", "club")
NoteClub = apps.get_model("note", "noteclub")
Alias = apps.get_model("note", "alias")
ContentType = apps.get_model('contenttypes', 'ContentType')
polymorphic_ctype_id = ContentType.objects.get_for_model(NoteClub).id
Club.objects.get_or_create(
id=1,
name="BDE",
email="tresorerie.bde@example.com",
require_memberships=True,
membership_fee_paid=3500,
membership_fee_unpaid=2800,
membership_duration=396,
membership_start="2022-08-01",
membership_end="2023-09-30",
)
Club.objects.get_or_create(
id=2,
name="BDA",
email="tresorerie.bda@example.com",
require_memberships=True,
membership_fee_paid=2500,
membership_fee_unpaid=1700,
membership_duration=396,
membership_start="2022-08-01",
membership_end="2023-09-30",
)
Club.objects.get_or_create(
id=3,
name="BDS",
email="tresorerie.bds@example.com",
require_memberships=True,
membership_fee_paid=3000,
membership_fee_unpaid=2300,
membership_duration=396,
membership_start="2022-08-01",
membership_end="2023-09-30",
)
NoteClub.objects.get_or_create(
id=5,
club_id=1,
polymorphic_ctype_id=polymorphic_ctype_id,
)
NoteClub.objects.get_or_create(
id=6,
club_id=2,
polymorphic_ctype_id=polymorphic_ctype_id,
)
NoteClub.objects.get_or_create(
id=7,
club_id=3,
polymorphic_ctype_id=polymorphic_ctype_id,
)
Alias.objects.get_or_create(
id=5,
note_id=5,
name="BDE",
normalized_name="bde",
)
Alias.objects.get_or_create(
id=6,
note_id=6,
name="BDA",
normalized_name="bda",
)
Alias.objects.get_or_create(
id=7,
note_id=7,
name="BDS",
normalized_name="bds",
)
class Migration(migrations.Migration):
dependencies = [
('member', '0002_auto_20220817_2253'),
('note', '0002_special_note'),
]
operations = [
migrations.RunPython(create_initial_club),
]

View file

@ -153,7 +153,7 @@ class Profile(models.Model):
return str(self.user)
def send_email_validation_link(self):
subject = "[Note Kfet] " + str(_("Activate your Note Kfet account"))
subject = "[Note Ker Lann] " + str(_("Activate your Note Ker Lann account"))
token = email_validation_token.make_token(self.user)
uid = urlsafe_base64_encode(force_bytes(self.user_id))
message = loader.render_to_string('registration/mails/email_validation_email.txt',

View file

@ -15,7 +15,7 @@ SPDX-License-Identifier: GPL-3.0-or-later
<div class="alert alert-info">
<h4>À quoi sert un jeton d'authentification ?</h4>
Un jeton vous permet de vous connecter à <a href="/api/">l'API de la Note Kfet</a> via votre propre compte
Un jeton vous permet de vous connecter à <a href="/api/">l'API de la Note Ker Lann</a> via votre propre compte
depuis un client externe.<br />
Il suffit pour cela d'ajouter en en-tête de vos requêtes <code>Authorization: Token &lt;TOKEN&gt;</code>
pour pouvoir vous identifier.<br /><br />
@ -55,10 +55,10 @@ SPDX-License-Identifier: GPL-3.0-or-later
<div class="card-header">
<div class="alert alert-info">
<p>
La Note Kfet implémente également le protocole <a href="https://oauth.net/2/">OAuth2</a>, afin de
La Note Ker Lann implémente également le protocole <a href="https://oauth.net/2/">OAuth2</a>, afin de
permettre à des applications tierces d'interagir avec la Note en récoltant des informations
(de connexion par exemple) voir en permettant des modifications à distance, par exemple lorsqu'il
s'agit d'avoir un site marchand sur lequel faire des transactions via la Note Kfet.
s'agit d'avoir un site marchand sur lequel faire des transactions via la Note Ker Lann.
</p>
<p>