From 8ef2c6c310066b7367bd82b720ac7186a44bb234 Mon Sep 17 00:00:00 2001
From: "Edgar P. Burkhart"
Date: Sat, 14 Jun 2025 17:43:22 +0200
Subject: [PATCH 01/59] Add postgres to celery service dependencies in Docker
Compose
---
compose.yaml | 1 +
1 file changed, 1 insertion(+)
diff --git a/compose.yaml b/compose.yaml
index 06e1702..f0df675 100644
--- a/compose.yaml
+++ b/compose.yaml
@@ -15,6 +15,7 @@ services:
depends_on:
- rabbitmq
- celery
+ - postgres
celery:
image: code.edgarpierre.fr/edpibu/musik
From fc2cd08b266e5fcb155f134328bf2c454f2ed2ea Mon Sep 17 00:00:00 2001
From: "Edgar P. Burkhart"
Date: Sat, 14 Jun 2025 17:50:03 +0200
Subject: [PATCH 02/59] Add env_file configuration for celery service in Docker
Compose
---
compose.yaml | 1 +
1 file changed, 1 insertion(+)
diff --git a/compose.yaml b/compose.yaml
index f0df675..ab50ecb 100644
--- a/compose.yaml
+++ b/compose.yaml
@@ -24,6 +24,7 @@ services:
command: uv run celery -A musik worker
environment:
CELERY_BROKER_URL: amqp://rabbitmq:5672//
+ env_file: stack.env
depends_on:
- rabbitmq
From 3c401d4f7c08491dae049e300473d7aac8c1033a Mon Sep 17 00:00:00 2001
From: "Edgar P. Burkhart"
Date: Sat, 14 Jun 2025 17:53:35 +0200
Subject: [PATCH 03/59] Add print statement to output DATABASES configuration
for debugging
---
musik/settings.py | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/musik/settings.py b/musik/settings.py
index f608bb0..3ec7bc7 100644
--- a/musik/settings.py
+++ b/musik/settings.py
@@ -91,7 +91,7 @@ DATABASES = {
"PASSWORD": os.getenv("POSTGRES_PASSWORD"),
}
}
-
+print(DATABASES)
# Password validation
# https://docs.djangoproject.com/en/5.2/ref/settings/#auth-password-validators
From d8f60f40179c2972d784c18df9601acd697ffdaf Mon Sep 17 00:00:00 2001
From: "Edgar P. Burkhart"
Date: Sat, 14 Jun 2025 18:03:35 +0200
Subject: [PATCH 04/59] Remove print statement from DATABASES configuration and
ensure POSTGRES_HOST is set in celery service
---
compose.yaml | 1 +
musik/settings.py | 1 -
2 files changed, 1 insertion(+), 1 deletion(-)
diff --git a/compose.yaml b/compose.yaml
index ab50ecb..0510259 100644
--- a/compose.yaml
+++ b/compose.yaml
@@ -24,6 +24,7 @@ services:
command: uv run celery -A musik worker
environment:
CELERY_BROKER_URL: amqp://rabbitmq:5672//
+ POSTGRES_HOST: postgres
env_file: stack.env
depends_on:
- rabbitmq
diff --git a/musik/settings.py b/musik/settings.py
index 3ec7bc7..b12b987 100644
--- a/musik/settings.py
+++ b/musik/settings.py
@@ -91,7 +91,6 @@ DATABASES = {
"PASSWORD": os.getenv("POSTGRES_PASSWORD"),
}
}
-print(DATABASES)
# Password validation
# https://docs.djangoproject.com/en/5.2/ref/settings/#auth-password-validators
From bf8161a7fbfc022b0cd87214345c5826c1da4e22 Mon Sep 17 00:00:00 2001
From: "Edgar P. Burkhart"
Date: Sat, 14 Jun 2025 18:11:58 +0200
Subject: [PATCH 05/59] Add volume configuration for PostgreSQL service in
Docker Compose
---
compose.yaml | 2 ++
1 file changed, 2 insertions(+)
diff --git a/compose.yaml b/compose.yaml
index 0510259..04838ec 100644
--- a/compose.yaml
+++ b/compose.yaml
@@ -37,3 +37,5 @@ services:
image: postgres:17
container_name: musik_postgres
env_file: stack.env
+ volumes:
+ - /docker/musik/postgres:/var/lib/postgresql/data
From 3069aab3f97b7ded13ed437012c736549c3074f5 Mon Sep 17 00:00:00 2001
From: "Edgar P. Burkhart"
Date: Sat, 14 Jun 2025 18:14:33 +0200
Subject: [PATCH 06/59] Add delete group link to group detail page and update
group creation header
---
game/templates/game/group_detail.html | 4 ++++
game/templates/game/group_form.html | 3 ---
2 files changed, 4 insertions(+), 3 deletions(-)
diff --git a/game/templates/game/group_detail.html b/game/templates/game/group_detail.html
index 9931d35..b6f48d8 100644
--- a/game/templates/game/group_detail.html
+++ b/game/templates/game/group_detail.html
@@ -25,6 +25,10 @@
formaction="{% url "group_clear_blacklist" pk=group.pk %}">
Effacer la blacklist
+
+ Supprimer
diff --git a/game/templates/game/group_form.html b/game/templates/game/group_form.html
index 72ae8d9..ef6da8c 100644
--- a/game/templates/game/group_form.html
+++ b/game/templates/game/group_form.html
@@ -5,9 +5,6 @@
{{ group.name }}
-
- Supprimer le groupe
-
{% else %}
Créer un groupe
{% endif %}
From fbe24915fe4e5b6b7a46eacb3e1637a57b7f9208 Mon Sep 17 00:00:00 2001
From: "Edgar P. Burkhart"
Date: Sat, 14 Jun 2025 18:25:24 +0200
Subject: [PATCH 07/59] Update signup view to use reverse_lazy for success URL
---
base/views.py | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/base/views.py b/base/views.py
index e3618a0..29eb8b3 100644
--- a/base/views.py
+++ b/base/views.py
@@ -1,5 +1,6 @@
from django.contrib.auth.models import User
from django.contrib.messages.views import SuccessMessageMixin
+from django.urls import reverse_lazy
from django.views.generic.base import TemplateView
from django.views.generic.edit import CreateView
@@ -13,5 +14,5 @@ class HomePageView(TemplateView):
class SignupView(SuccessMessageMixin, CreateView):
model = User
form_class = forms.UserSignupForm
- success_url = "/"
+ success_url = reverse_lazy("login")
success_message = "Le compte %(username)s a été créé avec succès."
From ac07607dd0208a932b0b96af7537d771d15d6886 Mon Sep 17 00:00:00 2001
From: "Edgar P. Burkhart"
Date: Sat, 14 Jun 2025 19:00:01 +0200
Subject: [PATCH 08/59] Add privacy policy page and update URLs configuration
---
base/templates/privacy.html | 21 +++++++++++++++++++++
base/urls.py | 2 ++
2 files changed, 23 insertions(+)
create mode 100644 base/templates/privacy.html
diff --git a/base/templates/privacy.html b/base/templates/privacy.html
new file mode 100644
index 0000000..8e78465
--- /dev/null
+++ b/base/templates/privacy.html
@@ -0,0 +1,21 @@
+{% extends "base.html" %}
+{% block content %}
+ Mentions légales
+ Éditeur
+
+ Ce site est réalisé et hébergé par Edgar P. Burkhart .
+
+ Données Personnelles
+
+ Dans le cadre de la création d'un compte, un nom d'utilisateur, une adresse email et un mot de passe sont requis.
+ Ces données sont stockées dans le seul but de permettre la connexion et la réinitialisation du mot de passe de l'utilisateur (dans le cas de l'adresse mail).
+
+
+ La connexion à un compte Youtube est utilisée pour permettre la génération automatique de playlists, et sa suppression le cas échéant.
+ Elle n'est pas requise pour l'utilisation de Musik.
+ Youtube est une marque de Google LLC.
+
+
+ La suppression des données stockée par le service Musik pour son utilisation peut être demandée par email à Edgar P. Burkhart .
+
+{% endblock content %}
diff --git a/base/urls.py b/base/urls.py
index 2a6b2d5..e46107f 100644
--- a/base/urls.py
+++ b/base/urls.py
@@ -1,4 +1,5 @@
from django.urls import include, path
+from django.views.generic import TemplateView
from . import views
@@ -6,4 +7,5 @@ urlpatterns = [
path("", views.HomePageView.as_view(), name="index"),
path("accounts/signup/", views.SignupView.as_view(), name="signup"),
path("accounts/", include("django.contrib.auth.urls")),
+ path("legal/", TemplateView.as_view(template_name="privacy.html")),
]
From 5c99306f7429fcdd3fe5a5dc30dd75b9a8aad60f Mon Sep 17 00:00:00 2001
From: "Edgar P. Burkhart"
Date: Sat, 14 Jun 2025 19:05:53 +0200
Subject: [PATCH 09/59] Add footer template and include it in base and hero
templates; update legal URL path
Signed-off-by: Edgar P. Burkhart
---
base/static/css/main.css | 6 ++++++
base/templates/base.html | 3 +++
base/templates/footer.html | 1 +
base/templates/hero.html | 7 +++++--
base/urls.py | 2 +-
5 files changed, 16 insertions(+), 3 deletions(-)
create mode 100644 base/templates/footer.html
diff --git a/base/static/css/main.css b/base/static/css/main.css
index c329a18..99b0900 100644
--- a/base/static/css/main.css
+++ b/base/static/css/main.css
@@ -91,6 +91,7 @@ article.message {
color-mix(in hsl, var(--pico-primary-background) 10%, var(--pico-background-color)) 80%,
var(--pico-background-color));
display: grid;
+ grid-template-rows: 1fr min-content;
align-items: center;
padding: 4rem;
@@ -116,3 +117,8 @@ h6,
i.i {
margin-right: .5em;
}
+
+footer {
+ text-align: center;
+ font-weight: 350;
+}
diff --git a/base/templates/base.html b/base/templates/base.html
index 8e677eb..8c84913 100644
--- a/base/templates/base.html
+++ b/base/templates/base.html
@@ -68,6 +68,9 @@
{% block content %}
{% endblock content %}
+
+ {% include "footer.html" %}
+
{% endblock body %}