From 673bbc09ebda2c49e74eb0c39a47554c085c2704 Mon Sep 17 00:00:00 2001 From: Aarni Halinen Date: Fri, 17 Jul 2020 15:50:04 +0300 Subject: [PATCH] Signup edit URL --- sikweb/settings.py | 3 ++- stack-compose-dev.yml | 1 + webapp/models.py | 2 -- webapp/utils.py | 4 ++-- webapp/views.py | 4 ++-- 5 files changed, 7 insertions(+), 7 deletions(-) diff --git a/sikweb/settings.py b/sikweb/settings.py index 459a56f..24fa015 100644 --- a/sikweb/settings.py +++ b/sikweb/settings.py @@ -17,7 +17,8 @@ from sikweb.base import * DEBUG = os.getenv('DEBUG', False) == 'True' URL = os.getenv("HOST", "api.sika.sik.party") -ALLOWED_HOSTS = ["localhost", "127.0.0.1", "sika.sik.party", URL] +FRONTEND_URL = os.getenv("FRONTEND_URL", "sika.sik.party") +ALLOWED_HOSTS = ["localhost", "127.0.0.1", FRONTEND_URL, URL] if DEBUG: ALLOWED_HOSTS = ["*"] diff --git a/stack-compose-dev.yml b/stack-compose-dev.yml index 0ffffb2..d178e5c 100644 --- a/stack-compose-dev.yml +++ b/stack-compose-dev.yml @@ -28,6 +28,7 @@ services: environment: - HOST=api.dev.sik.party + - FRONTEND_URL=dev.sik.party - DEBUG=True - EMAIL_API_KEY_FILE=/run/secrets/DJANGO_EMAIL_API_KEY - EMAIL_API_SECRET_FILE=/run/secrets/DJANGO_EMAIL_API_SECRET diff --git a/webapp/models.py b/webapp/models.py index 9c997c4..a7dc408 100644 --- a/webapp/models.py +++ b/webapp/models.py @@ -187,8 +187,6 @@ class Signup(models.Model): @receiver(post_save, sender=Signup) def email_on_signup(sender, instance, created, **kwargs): """Send email validation.""" - if not settings.ENABLE_AUTOMATIC_EMAILS: - return if created and instance.email: # TODO: Possible bug due to many-to-many relationship with events and forms. # TODO: Subject field crashes with lazy loaded translations. diff --git a/webapp/utils.py b/webapp/utils.py index fbf101d..d3d00a1 100644 --- a/webapp/utils.py +++ b/webapp/utils.py @@ -9,7 +9,7 @@ from datetime import timedelta import logging from django.conf import settings from django.template.loader import render_to_string -from sikweb.settings import URL, EMAIL_API_KEY, EMAIL_API_SECRET, DEFAULT_EMAIL_FROM, DEFAULT_EMAIL_FROM_ADDR, ENABLE_AUTOMATIC_EMAILS +from sikweb.settings import FRONTEND_URL, URL, EMAIL_API_KEY, EMAIL_API_SECRET, DEFAULT_EMAIL_FROM, DEFAULT_EMAIL_FROM_ADDR, ENABLE_AUTOMATIC_EMAILS def month_from_now(): @@ -59,7 +59,7 @@ def send_email(to, subject, body, html=False): def send_signup_email(to, subject, id, uuid): message = render_to_string( 'webapp:signup_email.html', { - 'url': f"https://{URL}/api/signup/{id}/edit/?uuid={uuid}", + 'url': f"https://{FRONTEND_URL}/signup/edit/{id}/{uuid}", } ) diff --git a/webapp/views.py b/webapp/views.py index c07b303..32159db 100644 --- a/webapp/views.py +++ b/webapp/views.py @@ -81,7 +81,7 @@ class SignupViewSet(viewsets.ModelViewSet): serializer_class = SignupSerializer permission_classes = [SignupPermission] - @action(detail=True, methods=['get', 'post'], permission_classes=[AllowAny]) + @action(detail=True, methods=['get', 'put'], permission_classes=[AllowAny]) def edit(self, request, pk=None, *args, **kwargs): uuid = request.query_params.get("uuid", None) queryset = self.filter_queryset(self.get_queryset()) @@ -89,7 +89,7 @@ class SignupViewSet(viewsets.ModelViewSet): signup = get_object_or_404(queryset, **filter) if request.method == 'GET': return self.retrieve(request, *args, **kwargs) - elif request.method == 'POST': + elif request.method == 'PUT': return self.partial_update(request, *args, **kwargs) def create(self, request, *args, **kwargs):