76 lines
5.3 KiB
Python
76 lines
5.3 KiB
Python
# Generated by Django 2.2.28 on 2022-08-17 20:53
|
||
|
||
import datetime
|
||
from django.conf import settings
|
||
from django.db import migrations, models
|
||
import django.db.models.deletion
|
||
import django.utils.timezone
|
||
import phonenumber_field.modelfields
|
||
|
||
|
||
class Migration(migrations.Migration):
|
||
|
||
initial = True
|
||
|
||
dependencies = [
|
||
migrations.swappable_dependency(settings.AUTH_USER_MODEL),
|
||
]
|
||
|
||
operations = [
|
||
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')),
|
||
],
|
||
options={
|
||
'verbose_name': 'club',
|
||
'verbose_name_plural': 'clubs',
|
||
},
|
||
),
|
||
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='e.g. "1A0", "9A♥", "SAPHIRE"', 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=2022, 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')),
|
||
('ml_events_registration', models.CharField(blank=True, choices=[('', 'No'), ('fr', 'Yes')], default='', max_length=2, verbose_name='Register on the mailing list to stay informed of the events of the campus (1 mail/week)')),
|
||
('ml_sport_registration', models.BooleanField(default=False, verbose_name='Register on the mailing list to stay informed of the sport events of the campus (1 mail/week)')),
|
||
('ml_art_registration', models.BooleanField(default=False, verbose_name='Register on the mailing list to stay informed of the art events of the campus (1 mail/week)')),
|
||
('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')),
|
||
('user', models.OneToOneField(on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL)),
|
||
],
|
||
options={
|
||
'verbose_name': 'user profile',
|
||
'verbose_name_plural': 'user profile',
|
||
},
|
||
),
|
||
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',
|
||
},
|
||
),
|
||
]
|