71 lines
4.6 KiB
Python
71 lines
4.6 KiB
Python
# Generated by Django 5.1 on 2024-08-13 09:26
|
||
|
||
import datetime
|
||
import django.db.models.deletion
|
||
import django.utils.timezone
|
||
import phonenumber_field.modelfields
|
||
from django.db import migrations, models
|
||
|
||
|
||
class Migration(migrations.Migration):
|
||
|
||
initial = True
|
||
|
||
dependencies = [
|
||
]
|
||
|
||
operations = [
|
||
migrations.CreateModel(
|
||
name='Profile',
|
||
fields=[
|
||
('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
|
||
('phone_number', phonenumber_field.modelfields.PhoneNumberField(blank=True, max_length=50, null=True, region=None, verbose_name='phone number')),
|
||
('section', models.CharField(blank=True, default='', help_text='Auto generated', max_length=255, verbose_name='section')),
|
||
('department', models.CharField(choices=[('INFO', 'Informatique'), ('MATH', 'Mathématiques'), ('DEM', 'Droit - économie - management'), ('MECATRO', 'Mécatronique'), ('2SEP', 'Sciences du sport et éducation physique'), ('SE', 'Sciences pour l’Environnement'), ('EXT', 'Externe')], max_length=8, verbose_name='department')),
|
||
('promotion', models.PositiveSmallIntegerField(default=2024, help_text='Year of entry to the school (None if not ENS student)', null=True, verbose_name='promotion')),
|
||
('address', models.CharField(blank=True, default='', max_length=255, verbose_name='address')),
|
||
('paid', models.BooleanField(default=False, help_text='Tells if the user receive a salary.', verbose_name='paid')),
|
||
('report_frequency', models.PositiveSmallIntegerField(default=0, verbose_name='report frequency (in days)')),
|
||
('last_report', models.DateTimeField(default=django.utils.timezone.now, verbose_name='last report date')),
|
||
('email_confirmed', models.BooleanField(default=False, verbose_name='email confirmed')),
|
||
('registration_valid', models.BooleanField(default=False, verbose_name='registration valid')),
|
||
],
|
||
options={
|
||
'verbose_name': 'user profile',
|
||
'verbose_name_plural': 'user profile',
|
||
},
|
||
),
|
||
migrations.CreateModel(
|
||
name='Club',
|
||
fields=[
|
||
('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
|
||
('name', models.CharField(max_length=255, unique=True, verbose_name='name')),
|
||
('email', models.EmailField(max_length=254, verbose_name='email')),
|
||
('require_memberships', models.BooleanField(default=True, help_text="Uncheck if this club don't require memberships.", verbose_name='require memberships')),
|
||
('membership_fee_paid', models.PositiveIntegerField(default=0, verbose_name='membership fee (paid students)')),
|
||
('membership_fee_unpaid', models.PositiveIntegerField(default=0, verbose_name='membership fee (unpaid students)')),
|
||
('membership_duration', models.PositiveIntegerField(blank=True, help_text='The longest time (in days) a membership can last (NULL = infinite).', null=True, verbose_name='membership duration')),
|
||
('membership_start', models.DateField(blank=True, help_text='Date from which the members can renew their membership.', null=True, verbose_name='membership start')),
|
||
('membership_end', models.DateField(blank=True, help_text='Maximal date of a membership, after which members must renew it.', null=True, verbose_name='membership end')),
|
||
('parent_club', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.PROTECT, to='member.club', verbose_name='parent club')),
|
||
],
|
||
options={
|
||
'verbose_name': 'club',
|
||
'verbose_name_plural': 'clubs',
|
||
},
|
||
),
|
||
migrations.CreateModel(
|
||
name='Membership',
|
||
fields=[
|
||
('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
|
||
('date_start', models.DateField(default=datetime.date.today, verbose_name='membership starts on')),
|
||
('date_end', models.DateField(null=True, verbose_name='membership ends on')),
|
||
('fee', models.PositiveIntegerField(verbose_name='fee')),
|
||
('club', models.ForeignKey(on_delete=django.db.models.deletion.PROTECT, to='member.club', verbose_name='club')),
|
||
],
|
||
options={
|
||
'verbose_name': 'membership',
|
||
'verbose_name_plural': 'memberships',
|
||
},
|
||
),
|
||
]
|