From a0fdb4bb4b107275385691c52b7f598d72a46c7d Mon Sep 17 00:00:00 2001
From: Sofiane Lasri <alasri250@gmail.com>
Date: Mon, 12 Jun 2023 11:43:39 +0200
Subject: [PATCH] =?UTF-8?q?Modification=20des=20mod=C3=A8les=20et=20de=20l?=
 =?UTF-8?q?a=20vue.?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

---
 WSR/migrations/0009_alter_race_name.py        | 18 ++++++++
 WSR/migrations/0010_alter_race_name.py        | 18 ++++++++
 WSR/migrations/0011_alter_race_type.py        | 18 ++++++++
 WSR/migrations/0012_alter_race_type.py        | 18 ++++++++
 ..._alter_race_circuit_alter_race_location.py | 23 ++++++++++
 WSR/migrations/0014_alter_race_circuit.py     | 18 ++++++++
 WSR/models.py                                 | 43 +++++++++++++++++--
 WSR/views.py                                  |  4 ++
 8 files changed, 156 insertions(+), 4 deletions(-)
 create mode 100644 WSR/migrations/0009_alter_race_name.py
 create mode 100644 WSR/migrations/0010_alter_race_name.py
 create mode 100644 WSR/migrations/0011_alter_race_type.py
 create mode 100644 WSR/migrations/0012_alter_race_type.py
 create mode 100644 WSR/migrations/0013_alter_race_circuit_alter_race_location.py
 create mode 100644 WSR/migrations/0014_alter_race_circuit.py

diff --git a/WSR/migrations/0009_alter_race_name.py b/WSR/migrations/0009_alter_race_name.py
new file mode 100644
index 0000000..fb5ce63
--- /dev/null
+++ b/WSR/migrations/0009_alter_race_name.py
@@ -0,0 +1,18 @@
+# Generated by Django 4.2.2 on 2023-06-12 09:12
+
+from django.db import migrations, models
+
+
+class Migration(migrations.Migration):
+
+    dependencies = [
+        ('WSR', '0008_race_name'),
+    ]
+
+    operations = [
+        migrations.AlterField(
+            model_name='race',
+            name='name',
+            field=models.CharField(default='', max_length=100),
+        ),
+    ]
diff --git a/WSR/migrations/0010_alter_race_name.py b/WSR/migrations/0010_alter_race_name.py
new file mode 100644
index 0000000..890f552
--- /dev/null
+++ b/WSR/migrations/0010_alter_race_name.py
@@ -0,0 +1,18 @@
+# Generated by Django 4.2.2 on 2023-06-12 09:14
+
+from django.db import migrations, models
+
+
+class Migration(migrations.Migration):
+
+    dependencies = [
+        ('WSR', '0009_alter_race_name'),
+    ]
+
+    operations = [
+        migrations.AlterField(
+            model_name='race',
+            name='name',
+            field=models.CharField(blank=True, default='', max_length=100),
+        ),
+    ]
diff --git a/WSR/migrations/0011_alter_race_type.py b/WSR/migrations/0011_alter_race_type.py
new file mode 100644
index 0000000..617e447
--- /dev/null
+++ b/WSR/migrations/0011_alter_race_type.py
@@ -0,0 +1,18 @@
+# Generated by Django 4.2.2 on 2023-06-12 09:15
+
+from django.db import migrations, models
+
+
+class Migration(migrations.Migration):
+
+    dependencies = [
+        ('WSR', '0010_alter_race_name'),
+    ]
+
+    operations = [
+        migrations.AlterField(
+            model_name='race',
+            name='type',
+            field=models.CharField(choices=[('championship', 'Championship'), ('single_race', 'Single Race'), ('face_to_face', 'Face To Face'), ('overtaking', 'Overtaking'), ('against_time', 'Against Time'), ('elimination', 'Elimination'), ('endurance', 'Endurance'), ('touge', 'Touge'), ('checkpoint', 'Checkpoint')], default='single_race', max_length=100),
+        ),
+    ]
diff --git a/WSR/migrations/0012_alter_race_type.py b/WSR/migrations/0012_alter_race_type.py
new file mode 100644
index 0000000..c121d04
--- /dev/null
+++ b/WSR/migrations/0012_alter_race_type.py
@@ -0,0 +1,18 @@
+# Generated by Django 4.2.2 on 2023-06-12 09:19
+
+from django.db import migrations, models
+
+
+class Migration(migrations.Migration):
+
+    dependencies = [
+        ('WSR', '0011_alter_race_type'),
+    ]
+
+    operations = [
+        migrations.AlterField(
+            model_name='race',
+            name='type',
+            field=models.CharField(choices=[('championship', 'Championship'), ('single_race', 'Single Race'), ('face_to_face', 'Face To Face'), ('overtaking', 'Overtaking'), ('against_time', 'Against Time'), ('elimination', 'Elimination'), ('endurance', 'Endurance'), ('touge', 'Touge'), ('checkpoint', 'Checkpoint'), ('drift', 'Drift')], default='single_race', max_length=100),
+        ),
+    ]
diff --git a/WSR/migrations/0013_alter_race_circuit_alter_race_location.py b/WSR/migrations/0013_alter_race_circuit_alter_race_location.py
new file mode 100644
index 0000000..5ee311b
--- /dev/null
+++ b/WSR/migrations/0013_alter_race_circuit_alter_race_location.py
@@ -0,0 +1,23 @@
+# Generated by Django 4.2.2 on 2023-06-12 09:33
+
+from django.db import migrations, models
+
+
+class Migration(migrations.Migration):
+
+    dependencies = [
+        ('WSR', '0012_alter_race_type'),
+    ]
+
+    operations = [
+        migrations.AlterField(
+            model_name='race',
+            name='circuit',
+            field=models.CharField(choices=[('Pacfic Way', 'Pacific Way'), ('Marina City', 'Marina City'), ('Boucle Art Deco', 'Art Deco'), ('Ocean Drive', 'Ocean Drive'), ('Lake Shore Point', 'Lake Shore Point'), ('Le Trocadéro', 'Trocadero'), ('Boucle de la fontaine', 'Fontaine'), ('Route de la corniche', 'Corniche'), ('Baie de colombe', 'Colombe Bay'), ('Champs Elysées', 'Champs Elysees'), ('Villefranche-sur-mer', 'Villefranche'), ('Liveroutes', 'Liveroutes'), ('La turbie', 'Turbie'), ('Ap Lei Chau', 'Ap Lei Chau'), ('Route des Toriis', 'Torris'), ('Pok Fu Lam', 'Pok Fu Lam'), ('Col Sakura', 'Sakura'), ('Boucle du quai Orra', 'Orra Loop'), ('Voie Hattan', 'Hattan Way')], max_length=100),
+        ),
+        migrations.AlterField(
+            model_name='race',
+            name='location',
+            field=models.CharField(choices=[('Californie', 'Califoria'), ('Chicago', 'Chicago'), ('Miami', 'Miami'), ('Paris', 'Paris'), ('Barcelone', 'Barcelona'), ("Côte d'Azur", 'Cot'), ('Hong Kong', 'Hong Kong'), ('Okutama', 'Okutama'), ('Dubaï', 'Dubai')], max_length=100),
+        ),
+    ]
diff --git a/WSR/migrations/0014_alter_race_circuit.py b/WSR/migrations/0014_alter_race_circuit.py
new file mode 100644
index 0000000..abcad14
--- /dev/null
+++ b/WSR/migrations/0014_alter_race_circuit.py
@@ -0,0 +1,18 @@
+# Generated by Django 4.2.2 on 2023-06-12 09:36
+
+from django.db import migrations, models
+
+
+class Migration(migrations.Migration):
+
+    dependencies = [
+        ('WSR', '0013_alter_race_circuit_alter_race_location'),
+    ]
+
+    operations = [
+        migrations.AlterField(
+            model_name='race',
+            name='circuit',
+            field=models.CharField(choices=[('Pacfic Way', 'Pacific Way'), ('Marina City', 'Marina City'), ('Boucle Art Deco', 'Art Deco'), ('Ocean Drive', 'Ocean Drive'), ('Lake Shore Point', 'Lake Shore Point'), ('Le Trocadéro', 'Trocadero'), ('Boucle de la fontaine', 'Fontaine'), ('Route de la corniche', 'Corniche'), ('Baie de colombe', 'Colombe Bay'), ('Champs Elysées', 'Champs Elysees'), ('Villefranche-sur-mer', 'Villefranche'), ('Liveroutes', 'Liveroutes'), ('La turbie', 'Turbie'), ('Ap Lei Chau', 'Ap Lei Chau'), ('Route des Toriis', 'Torris'), ('Pok Fu Lam', 'Pok Fu Lam'), ('Col Sakura', 'Sakura'), ('Boucle du quai Orra', 'Orra Loop'), ('Voie Hattan', 'Hattan Way'), ('Belvédère de Nakheel', 'Nakheel')], max_length=100),
+        ),
+    ]
diff --git a/WSR/models.py b/WSR/models.py
index 29fc383..e00f820 100644
--- a/WSR/models.py
+++ b/WSR/models.py
@@ -37,13 +37,48 @@ class Race(models.Model):
         ELIMINATION = "elimination"
         ENDURANCE = "endurance"
         TOUGE = "touge"
+        CHECKPOINT = "checkpoint"
+        DRIFT = "drift"
 
     class RaceParticipationType(models.TextChoices):
         INVITATION = "invitation"
         PARTICIPATION = "participation"
 
-    location = models.CharField(max_length=100)
-    circuit = models.CharField(max_length=100)
+    class Locations(models.TextChoices):
+        CALIFORIA = "Californie"
+        CHICAGO = "Chicago"
+        MIAMI = "Miami"
+        PARIS = "Paris"
+        BARCELONA = "Barcelone"
+        COT = "Côte d'Azur"
+        HONG_KONG= "Hong Kong"
+        OKUTAMA = "Okutama"
+        DUBAI = "Dubaï"
+
+    class Circuits(models.TextChoices):
+        PACIFIC_WAY = "Pacfic Way"
+        MARINA_CITY = "Marina City"
+        ART_DECO = "Boucle Art Deco"
+        OCEAN_DRIVE = "Ocean Drive"
+        LAKE_SHORE_POINT = "Lake Shore Point"
+        TROCADERO = "Le Trocadéro"
+        FONTAINE = "Boucle de la fontaine"
+        CORNICHE = "Route de la corniche"
+        COLOMBE_BAY = "Baie de colombe"
+        CHAMPS_ELYSEES = "Champs Elysées"
+        VILLEFRANCHE = "Villefranche-sur-mer"
+        LIVEROUTES = "Liveroutes"
+        TURBIE = "La turbie"
+        AP_LEI_CHAU = "Ap Lei Chau"
+        TORRIS = "Route des Toriis"
+        POK_FU_LAM = "Pok Fu Lam"
+        SAKURA = "Col Sakura"
+        ORRA_LOOP = "Boucle du quai Orra"
+        HATTAN_WAY = "Voie Hattan"
+        NAKHEEL = "Belvédère de Nakheel"
+
+    location = models.CharField(max_length=100, choices=Locations.choices)
+    circuit = models.CharField(max_length=100, choices=Circuits.choices)
     finishing_position = models.PositiveIntegerField(verbose_name="Finishing Position")
     season = models.ForeignKey(Season, on_delete=models.CASCADE)
     image = models.ImageField(upload_to='race_images', verbose_name="Illustration Image")
@@ -53,11 +88,11 @@ class Race(models.Model):
         choices=RaceParticipationType.choices,
         default=RaceParticipationType.PARTICIPATION
     )
-    name = models.CharField(max_length=100, default=None, blank=True, null=True)
+    name = models.CharField(max_length=100, default="", blank=True)
     date = models.DateField(default=datetime.date.today)
 
     def __str__(self):
-        return self.name
+        return self.participation_type + ' | ' + self.type + ' ' + self.name + ' - ' + self.location + ', ' + self.circuit
 
 
 class Article(models.Model):
diff --git a/WSR/views.py b/WSR/views.py
index da9edbe..2c65714 100644
--- a/WSR/views.py
+++ b/WSR/views.py
@@ -46,6 +46,10 @@ def home(request):
                 type_string = "Endurance"
             case 'touge':
                 type_string = "Touge"
+            case 'checkpoint':
+                type_string = "Checkpoints"
+            case 'drift':
+                type_string = "Drift"
 
         race.pos_string = pos_string
         race.type_string = type_string
-- 
GitLab