Skip to content
Snippets Groups Projects
Commit dd88db0d authored by Dorian Lesbre's avatar Dorian Lesbre
Browse files

Move profile from accounts to home

parent c8329790
No related branches found
No related tags found
No related merge requests found
...@@ -9,7 +9,7 @@ ...@@ -9,7 +9,7 @@
<br> <br>
<div class="flex"> <div class="flex">
<input type="submit" value="Valider"> <input type="submit" value="Valider">
<a class="button" href="{% url 'accounts:profile' %}">Annuler</a> <a class="button" href="{% url 'profile' %}">Annuler</a>
</div> </div>
</form> </form>
...@@ -21,7 +21,7 @@ ...@@ -21,7 +21,7 @@
<br> <br>
<div class="flex"> <div class="flex">
<input type="submit" value="Valider"> <input type="submit" value="Valider">
<a class="button" href="{% url 'accounts:profile' %}">Annuler</a> <a class="button" href="{% url 'profile' %}">Annuler</a>
</div> </div>
</form> </form>
{% endblock %} {% endblock %}
...@@ -7,7 +7,6 @@ app_name = "accounts" ...@@ -7,7 +7,6 @@ app_name = "accounts"
urlpatterns = [ urlpatterns = [
path("login/", views.LoginView.as_view(), name="login"), path("login/", views.LoginView.as_view(), name="login"),
path("logout/", views.LogoutView.as_view(), name="logout"), path("logout/", views.LogoutView.as_view(), name="logout"),
path("profile/", views.ProfileView.as_view(), name="profile"),
path("create/", views.CreateAccountView.as_view(), name="create"), path("create/", views.CreateAccountView.as_view(), name="create"),
path("update/", views.UpdateAccountView.as_view(), name="update"), path("update/", views.UpdateAccountView.as_view(), name="update"),
path("change_password/", views.UpdatePasswordView.as_view(), name="change_password"), path("change_password/", views.UpdatePasswordView.as_view(), name="change_password"),
......
...@@ -32,7 +32,7 @@ def send_validation_email(request, user, subject, template): ...@@ -32,7 +32,7 @@ def send_validation_email(request, user, subject, template):
class LoginView(auth_views.LoginView): class LoginView(auth_views.LoginView):
"""Vue pour se connecter""" """Vue pour se connecter"""
template_name = "login.html" template_name = "login.html"
redirect_authenticated_user = "accounts:profile" redirect_authenticated_user = "profile"
form_class = forms.LoginForm form_class = forms.LoginForm
...@@ -49,26 +49,6 @@ class LogoutView(RedirectView): ...@@ -49,26 +49,6 @@ class LogoutView(RedirectView):
return super().get_redirect_url(*args, **kwargs) return super().get_redirect_url(*args, **kwargs)
class ProfileView(LoginRequiredMixin, TemplateView):
"""Vue des actions de gestion de son profil"""
template_name = "profile.html"
redirect_field_name = "next"
def get_context_data(self, **kwargs):
context = super().get_context_data(**kwargs)
settings = SiteSettings.load()
if settings.activities_allocated:
my_choices = InterludesActivityChoices.objects.filter(
participant=self.request.user.profile,
accepted=True
)
else:
my_choices = InterludesActivityChoices.objects.filter(participant=self.request.user.profile)
context["my_choices"] = my_choices
return context
# ============================== # ==============================
# Create Account # Create Account
# ============================== # ==============================
...@@ -117,7 +97,7 @@ class CreateAccountView(View): ...@@ -117,7 +97,7 @@ class CreateAccountView(View):
class ActivateAccountView(RedirectView): class ActivateAccountView(RedirectView):
"""Vue d'activation de compte (lien envoyé par mail)""" """Vue d'activation de compte (lien envoyé par mail)"""
permanent = False permanent = False
success_pattern_name = "accounts:profile" success_pattern_name = "profile"
failure_pattern_name = "home" failure_pattern_name = "home"
def get_redirect_url(self, uidb64, token, *args, **kwargs): def get_redirect_url(self, uidb64, token, *args, **kwargs):
...@@ -180,7 +160,7 @@ class UpdateAccountView(LoginRequiredMixin, UpdateView): ...@@ -180,7 +160,7 @@ class UpdateAccountView(LoginRequiredMixin, UpdateView):
messages.info(self.request, 'Un lien vous a été envoyé par mail. Utilisez le pour valider la mise à jour.') messages.info(self.request, 'Un lien vous a été envoyé par mail. Utilisez le pour valider la mise à jour.')
# return reverse("registration:email_confirmation_needed") # return reverse("registration:email_confirmation_needed")
return reverse("accounts:profile") return reverse("profile")
def form_valid(self, form): def form_valid(self, form):
messages.success(self.request, "Informations personnelles mises à jour") messages.success(self.request, "Informations personnelles mises à jour")
...@@ -208,7 +188,7 @@ class UpdatePasswordView(LoginRequiredMixin, FormView): ...@@ -208,7 +188,7 @@ class UpdatePasswordView(LoginRequiredMixin, FormView):
form.apply() form.apply()
messages.success(self.request, "Mot de passe mis à jour") messages.success(self.request, "Mot de passe mis à jour")
login(self.request, self.request.user) login(self.request, self.request.user)
return redirect("accounts:profile") return redirect("profile")
# ============================== # ==============================
......
...@@ -9,7 +9,7 @@ Vous avez obtenu {{ my_choices|length }} activité(s) (sur {{ requested_activiti ...@@ -9,7 +9,7 @@ Vous avez obtenu {{ my_choices|length }} activité(s) (sur {{ requested_activiti
{% for choice in my_choices %} {% for choice in my_choices %}
- {{ choice.slot }}{% if choice.slot.on_planning %} (le {{ choice.slot.start|date:"l à H:i" }}){% endif %}{% endfor %}{% if activities %} - {{ choice.slot }}{% if choice.slot.on_planning %} (le {{ choice.slot.start|date:"l à H:i" }}){% endif %}{% endfor %}{% if activities %}
Cette liste est également disponible sur la page "Mon compte" du site: {% url "accounts:profile" %}. Cette liste est également disponible sur la page "Mon compte" du site: {% url "profile" %}.
Votre adresse email sera communiquée aux orgas pour les activités nécessitant préparation avant l'événement.{% endif %} Votre adresse email sera communiquée aux orgas pour les activités nécessitant préparation avant l'événement.{% endif %}
{% else %} {% else %}
Vous n'aviez demandé aucune activité. Vous n'aviez demandé aucune activité.
......
from django.contrib import messages
from django.core.mail import mail_admins, send_mass_mail from django.core.mail import mail_admins, send_mass_mail
from django.db.models import Count from django.db.models import Count
from django.shortcuts import redirect from django.shortcuts import redirect
...@@ -284,7 +285,7 @@ class ExportActivityChoices(SuperuserRequiredMixin, CSVWriteView): ...@@ -284,7 +285,7 @@ class ExportActivityChoices(SuperuserRequiredMixin, CSVWriteView):
class SendEmailBase(SuperuserRequiredMixin, RedirectView): class SendEmailBase(SuperuserRequiredMixin, RedirectView):
"""Classe abstraite pour l'envoie d'un groupe d'emails""" """Classe abstraite pour l'envoie d'un groupe d'emails"""
pattern_name = "admin_page" pattern_name = "admin_pages:index"
from_address = None from_address = None
def send_emails(self): def send_emails(self):
......
...@@ -64,7 +64,7 @@ ...@@ -64,7 +64,7 @@
FAQ FAQ
</a> </a>
{% if request.user.is_authenticated %} {% if request.user.is_authenticated %}
<a href="{% url 'accounts:profile' %}" <a href="{% url 'profile' %}"
class="{% block nav_profile %}{% endblock %} "> class="{% block nav_profile %}{% endblock %} ">
Mon compte Mon compte
</a> </a>
......
...@@ -50,7 +50,7 @@ ...@@ -50,7 +50,7 @@
<div class="flex"> <div class="flex">
<input type="submit" value="Valider"> <input type="submit" value="Valider">
<a class="button" href="{% url 'accounts:profile' %}">Annuler</a> <a class="button" href="{% url 'profile' %}">Annuler</a>
</div> </div>
</form> </form>
......
...@@ -65,7 +65,7 @@ ...@@ -65,7 +65,7 @@
<div class="flex"> <div class="flex">
<input type="submit" value="Valider"> <input type="submit" value="Valider">
<a class="button" href="{% url 'accounts:profile' %}">Annuler</a> <a class="button" href="{% url 'profile' %}">Annuler</a>
</div> </div>
</form> </form>
......
File moved
...@@ -14,12 +14,13 @@ urlpatterns = [ ...@@ -14,12 +14,13 @@ urlpatterns = [
path('desinscription/', views.UnregisterView.as_view(), name="desinscription"), path('desinscription/', views.UnregisterView.as_view(), name="desinscription"),
path('activites/', views.ActivityView.as_view(), name = 'activites'), path('activites/', views.ActivityView.as_view(), name = 'activites'),
path('faq/', views.FAQView.as_view(), name = 'FAQ'), path('faq/', views.FAQView.as_view(), name = 'FAQ'),
path("profile/", views.ProfileView.as_view(), name="profile"),
path('favicon.ico', RedirectView.as_view(url='/static/imgs/favicon.ico')), path('favicon.ico', RedirectView.as_view(url='/static/imgs/favicon.ico')),
path('admin_pages/', include(('admin_pages.urls', 'admin_pages'), namespace="admin_pages")),
path( path(
'sitemap.xml', sitemap, {'sitemaps': sitemaps}, 'sitemap.xml', sitemap, {'sitemaps': sitemaps},
name='django.contrib.sitemaps.views.sitemap' name='django.contrib.sitemaps.views.sitemap'
), ),
path('admin_pages/', include(('admin_pages.urls', 'admin_pages'), namespace="admin_pages")),
path('accounts/', include("accounts.urls")), path('accounts/', include("accounts.urls")),
] ]
......
...@@ -55,10 +55,32 @@ class FAQView(TemplateView): ...@@ -55,10 +55,32 @@ class FAQView(TemplateView):
# ============================== # ==============================
# Registration # Profile and registration
# ============================== # ==============================
class ProfileView(LoginRequiredMixin, TemplateView):
"""Vue des actions de gestion de son profil"""
template_name = "profile.html"
redirect_field_name = "next"
def get_context_data(self, **kwargs):
context = super().get_context_data(**kwargs)
settings = SiteSettings.load()
if settings.activities_allocated:
my_choices = models.InterludesActivityChoices.objects.filter(
participant=self.request.user.profile,
accepted=True
)
else:
my_choices = models.InterludesActivityChoices.objects.filter(
participant=self.request.user.profile
)
context["my_choices"] = my_choices
return context
class RegisterClosed(TemplateView): class RegisterClosed(TemplateView):
"""Vue pour quand les inscriptions ne sont pas ouvertes""" """Vue pour quand les inscriptions ne sont pas ouvertes"""
template_name = "inscription/closed.html" template_name = "inscription/closed.html"
...@@ -113,7 +135,7 @@ class RegisterUpdateView(LoginRequiredMixin, TemplateView): ...@@ -113,7 +135,7 @@ class RegisterUpdateView(LoginRequiredMixin, TemplateView):
self.set_activities(request.user.profile, formset) self.set_activities(request.user.profile, formset)
messages.success(request, "Votre inscription a bien été enregistrée") messages.success(request, "Votre inscription a bien été enregistrée")
return redirect("accounts:profile", permanent=False) return redirect("profile", permanent=False)
class RegisterView(View): class RegisterView(View):
"""Vue pour l'inscription """Vue pour l'inscription
...@@ -128,7 +150,7 @@ class RegisterView(View): ...@@ -128,7 +150,7 @@ class RegisterView(View):
class UnregisterView(LoginRequiredMixin, RedirectView): class UnregisterView(LoginRequiredMixin, RedirectView):
pattern_name = "accounts:profile" pattern_name = "profile"
def get_redirect_url(self, *args, **kwargs): def get_redirect_url(self, *args, **kwargs):
participant = self.request.user.profile participant = self.request.user.profile
......
...@@ -178,7 +178,7 @@ MEDIA_URL = '/media/' ...@@ -178,7 +178,7 @@ MEDIA_URL = '/media/'
MEDIA_ROOT = os.path.join(BASE_DIR, 'media') MEDIA_ROOT = os.path.join(BASE_DIR, 'media')
LOGIN_URL = "accounts:login" LOGIN_URL = "accounts:login"
LOGIN_REDIRECT_URL = "accounts:profile" LOGIN_REDIRECT_URL = "profile"
# Prefix to mails to admins # Prefix to mails to admins
EMAIL_SUBJECT_PREFIX = '[DJANGO WEBLUDES] ' EMAIL_SUBJECT_PREFIX = '[DJANGO WEBLUDES] '
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment